它似乎在注释中具有特殊含义 - 它允许您在实例化注释时跳过参数名称.
@Foo(bar = "abc") // a normal instantiation of an annotation
@Foo("abc") // if bar were renamed 'value'
Run Code Online (Sandbox Code Playgroud)
这记录在哪里?是value关键字还是没有?另见.
不,value是不是 Java中的关键字.如果只为注释指定了一个参数,并且注释只有一个被调用的元素,则在使用注释时可以省略value该名称value.这里解释了注释:http:
//download.oracle.com/javase/1.5.0/docs/guide/language/annotations.html
并在JLS的第9.7节中有记录:
它不是常规关键字,因为它未在JLS的第3.9节中列出.特别是,据我所知,你可以在任何你喜欢的地方使用它作为标识符.
使用的value默认情况下,注释值中指定部分9.7:
第三种注释形式,单元素注释,是一种设计用于单元素注释类型的简写:
Run Code Online (Sandbox Code Playgroud)SingleElementAnnotation: @ TypeName ( ElementValue )它是正常注释的简写:
Run Code Online (Sandbox Code Playgroud)@TypeName ( value = ElementValue )
| 归档时间: |
|
| 查看次数: |
890 次 |
| 最近记录: |