Java:反射(在运行时)与镜像(在注释处理中)

时间:2010-12-16 20:15:28

标签: java reflection types mirroring annotation-processing

我理解

概念之间的一般差异
  • 反思(使用Class, Method, Field, Annotation, ...运行时完成)和
  • 镜像(使用TypeMirror, TypeElement, ...注释处理期间完成)。

但有人可以请深入比较这两个概念(或指向一个资源,在哪里完成)?

例如,哪个概念提供了另一个概念所提供的信息......

谢谢。

2 个答案:

答案 0 :(得分:3)

  • 反射类用于表示正在运行的JVM中的对象类 。反射是一个非常古老的概念,从一开始就存在于Java中。因此,它在某些方面有点笨拙,已经扩展到适应新的语言结构(特别是泛型)。
  • javax.lang.model中的类用于处理 Java源代码。它们是在Generics已经存在的情况下设计的,并且可以(并且必须)更广泛地支持它们,因为它们在类型擦除发生之前使用

答案 1 :(得分:0)

我想你会在this paper中找到答案。