【问题标题】:how to climb up the hierarchy tree of a TypeMirror object?如何爬上 TypeMirror 对象的层次结构树?
【发布时间】:2013-01-24 09:29:08
【问题描述】:

我正在使用 Java 的注解处理机制为我的一些类创建序列化程序。
我想检查当前处理的类的每个字段,并确保它是MyBaseSerializableClass 的子类。
我的问题是我只知道如何找到字段类型的直接超类:

TypeElement fieldType = (TypeElement)element;
TypeMirror superClassType = fieldType.getSuperclass();

我怎样才能找到superClassType 的超类并继续向上继承树直到我点击Object

【问题讨论】:

    标签: java annotations apt


    【解决方案1】:

    我不知道这是否是最好的方法,但这是我找到的解决方案:

    Types typeUtils = processingEnv.getTypeUtils();
    while (!typeElement.toString().equals(Object.class.getName())) {
            element = (TypeElement)typeUtils.asElement(element.getSuperclass());
            // do whatever with element
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多