作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试使用 Java 6 元模型 API 查找方法的参数类型。如果类型是枚举,我还想知道所有类型的枚举常量名称。到目前为止,这是我得到的:
for (Element member : members) {
if(member.getKind() == ElementKind.METHOD) {
ExecutableElement methodElement = (ExecutableElement) member;
List<? extends VariableElement> parameters = methodElement.getParameters();
for (VariableElement parameter : parameters) {
//How do I get the type of the parameter here?
}
}
}
最佳答案
Element#asType()获取 DeclaredType。
对于枚举,使用 Types#asElement()使用 DeclaredType 获取枚举类型的元素,然后使用 ElementVisitor 或使用 getEnclosedElements() 遍历成员。
关于java - 如何从 javax.lang.model.VariableElement 获取参数类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7763311/
我是一名优秀的程序员,十分优秀!