我正在使用Java 6的注释处理,即可以在javax.annotation.processing
(而不是Java 5的APT)中找到的东西。什么是背后的概念:类型 - 元素 - 镜像
我想知道各种Element
,Type
和Mirror
类之间的概念差异是什么。由于我不太明白这一点,因此很难有效地对注释处理器进行编程。有很多方法可以在这些概念之间进行“转换”,但我不确定使用它们时我正在做什么。
因此,例如,让我有一个AnnotationMirror
的实例。
当我拨打getAnnotationType()
时,我得到一个DeclaredType
(无论出于何种原因实施TypeMirror
)的实例。
然后我可以打电话给asElement()
并获得Element
的实例。
发生了什么?
javadoc并不十分清楚TypeElement是什么。我认为它与类型的声明(因此是类型参数)更紧密地联系在一起,而TypeDeclaration(令人困惑的名字)更多地与使用类型相关联,例如在变量声明中。我认为这两个术语在注释中很难理解。 – Wolfgang 2010-01-27 12:52:49
但是根据这个[question](http://stackoverflow.com/questions/31245638/understanding-typeelement-and-declaredtype-interface-in-java),'DeclareType'必须是'MyException.class' – overexchange 2015-07-11 13:01:50