Java注释中字段和方法的默认修饰符是什么?

Java注释中字段和方法的默认修饰符是什么?,java,annotations,access-modifiers,Java,Annotations,Access Modifiers,中的x和m的默认修饰符是什么 public@interface Anno{ int m()默认值为x; int x=10; } ? 我假设上述代码相当于: public@interface Anno{ 公共int m()默认值为x; 公共静态最终整数x=10; } 其中,修饰符public和publicstaticfinal是多余的,但我没有找到对此的官方解释 我在这里看: 是否有关于这些修改器的文档?或者有人能提供一个“正式”的解释吗?是的,我相信你是对的——我发现支持这一点的一点文档是

中的
x
m
的默认修饰符是什么

public@interface Anno{
int m()默认值为x;
int x=10;
}
?

我假设上述代码相当于:

public@interface Anno{
公共int m()默认值为x;
公共静态最终整数x=10;
}
其中,修饰符
public
publicstaticfinal
是多余的,但我没有找到对此的官方解释

我在这里看:


是否有关于这些修改器的文档?或者有人能提供一个“正式”的解释吗?

是的,我相信你是对的——我发现支持这一点的一点文档是:

除非在此明确修改,否则所有适用于普通接口声明的规则都适用于注释类型声明


所以它的行为基本上就像一个普通的接口,
public
abstract
是冗余的,所有字段都是隐式静态和最终的

在普通的接口中,抽象对于方法也是隐式的。@ratchetfreak:True-这里看起来就是这样。当我有机会下火车时会编辑。。。