A想要获取类的所有方法,包括它的扩展类的方法。
例如:
interface A{
void a();
}
interface B extends A {
void B();
}
我想通过Element获取方法a()和b()。
最佳答案
TypeElement element;
getSuperElement(element.asType());
private void getSuperElement(TypeMirror mirror) {
if (mirror == null ) return;
List<? extends TypeMirror> mirrors = mTypeUtils.directSupertypes(mirror);
if (mirrors == null || mirrors.isEmpty()) return;
for (TypeMirror it : mirrors) {
if (it.getKind() == TypeKind.DECLARED) {
// this element is super class's element, you can do anything in here
Element element = ((DeclaredType) it).asElement();
}
getSuperElement(methodBuilder, componentName, it);
}
}
关于java - 如何通过注解处理工具获取extends接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55058688/