java - 两个接口(interface)中的弃用方法

标签 java deprecated

我有一个带有弃用方法的接口(interface):

public interface A
{
    @Deprecated
    public String getUUID();
}

还有另一个具有相同但未弃用方法的接口(interface):

public interface B
{
    public String getUUID();
}

实现两个接口(interface)的类:

public class MyBean implements A, B
{
    @Override
    public String getUUID()
    {
        return UUID.randomUUID().toString();
    }
}

编译MyBean时出现警告:

javac -Xlint:deprecation MyBean.java A.java B.java
MyBean.java:8: warning: [deprecation] getUUID() in A has been deprecated
    public String getUUID()
                  ^
1 warning

我真的不明白为什么在我实现 B 时需要这个警告,它定义了不推荐使用的方法...

最佳答案

您已经回答了您的问题。

您收到警告是因为您执行了 implement A,它具有 @Deprecated 注释。参见 here :

@Deprecated annotation indicates that the marked element is deprecated and should no longer be used. The compiler generates a warning whenever a program uses a method, class, or field with the @Deprecated annotation.

我认为该警告没有任何问题。它应该存在,因为您实际上正在实现一个已弃用 方法,该方法在您正在实现的接口(interface)之一中找到。

关于java - 两个接口(interface)中的弃用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20515743/

相关文章:

ios - 使用新的 swift os_log api 读取日志

android - CursorAdapter 已弃用?

java - 将日志记录信息存储到 oracle 数据库

java - 如何增加整数数组值?

指定路径的Java JDK静默安装

java - 如何在 JSON 数据解码期间处理解析器异常?

ruby-on-rails - Gem.source_index 已弃用,请使用 Specification。我应该重新安装 Gem 还是 Rails?

android - 在向后兼容的代码中有这么多不推荐使用的方法可以吗?

java - 如何在java中创建一个接受回调函数的方法?

android - WifiManager startScan 已弃用。选择?