为什么Java类不从实现的接口继承注释?

为什么Java类不从实现的接口继承注释?,第1张

为什么Java类不从实现的接口继承注释

我要说的原因是,否则会发生多重继承问题。

例:

@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.METHOD) @Inheritedpublic @interface Baz { String value(); }public interface Foo{    @Baz("baz") void doStuff();}public interface Bar{    @Baz("phleem") void doStuff();}public class Flipp{    @Baz("flopp") public void doStuff(){}}public class MyClass extends Flipp implements Foo, Bar{}

如果我这样做:

MyClass.class.getMethod("doStuff").getAnnotation(Baz.class).value()

结果将是什么?’baz’,’phleem’或’flopp’?

因此,接口上的注释很少有用。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4990591.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存