gpt4 book ai didi

Java 注释 - 标识符或类型名称

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:46:48 26 4
gpt4 key购买 nike

Java 语言规范指出 a normal annotation格式是

NormalAnnotation:
  @ TypeName ( ElementValuePairsopt )

A single-element annotation格式为:

SingleElementAnnotation:
  @ Identifier ( ElementValue )

我不明白,为什么会出现这种不一致,为什么普通注解是 TypeName 而单个元素注解是 Identifier?我相信对 Identifier 的引用可能是规范中的一个错误,因为 Identifier 没有限定并且 javac 接受合格的 AnnotationDeclarations,对于普通注释和单个元素注释。

最佳答案

Identifier 的引用是规范中的错误,因为无法限定标识符(您可以编写 @java.lang.SuppressWarnings("unchecked") 但是 java.lang.SuppressWarnings 不是合法标识符)。 Javac 接受合格的 AnnotationDeclarations,用于普通注释和单个元素注释。该错误似乎是最近引入的;旧版本的 JLS 没有这个问题。

关于Java 注释 - 标识符或类型名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17059951/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com