Java 编程语言的模型元素的接口

这篇博客详细介绍了Java编程语言中模型元素接口,包括`javax.lang.model`包下的Element接口及其子接口如Parameterizable、QualifiedNameable,还讨论了ElementKind、TypeMirror和Modifier等关键概念,以及如何获取元素的简单名、修饰符、类型信息等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Java编程语言的模型元素接口

package: javax.lang.model

第一部分

  1. Element

    Name getSimpleName();

    返回元素的简单名称,如java.util.Set的简单名称“Set”

    Element getEnclosingElement();

    返回封装此元素的最外层元素

    Set getModifiers();

    返回元素的修饰符

    ElementKind getKind();

    返回元素的种类

    TypeMirror asType();

    返回元素的类型镜像,一般来说元素会返回一个类型系列,而不是只定义一个类型。
    如果此元素是一般元素,则返回元素的原型类型,如一般类元素C,返回C的参数化类型。

  2. Parameterizable

    List< ? extends TypeParameterElement> getTypeParameters();

    按照声明的顺序,返回类型元素的形式类型的参数

  3. QualifiedNameable

    Name getQualifiedName();

    返回此类型元素的完全限定名称

第二部分

  1. ElementKind

    元素的种类

    PACKAGE,一个包
    ENUM,一个枚举类型
    CLASS,一般的类
    ANNOTATION_TYPE,
    INTERFACE,一般的接口
    ENUM_CONSTANT,一个枚举常量
    FIELD,一般的成员变量
    PARAMETER,方法或构造方法的参数
    LOCAL_VARIABLE,局部变量
    EXCEPTION_PARAMETER,异常处理程序的参数
    METHOD,一个方法
    CONSTRUCTOR,一个构造方法
    STATIC_INIT,一个静态初始化程序
    INSTANCE_INIT,一个常量初始化程序
    TYPE_PARAMETER,一个类型参数
    OTHER,一个为实现保留的元素
    RESOURCE_VARIABLE;

  2. TypeMirror,元素的类型镜像

    一般配合TypeMirror.getKind()方法或者Types.isSameType(.,.)做一些操作。

  3. TypeKind

    类型镜像的种类,通过TypeMirror.getKind()拿到,是一个枚举值。

    BOOLEAN, BYTE, SHORT,INT,LONG,CHAR,FLOAT,DOUBLE,基本类型
    VOID, 对应关键字void的伪类型
    NONE, 在实际类型不合适的地方使用的伪类型
    NULL, null类型
    ARRAY, 数组类型
    DECLARED, 类或接口类型
    ERROR, 无法解析的类或接口类型
    TYPEVAR, 类型变量var
    WILDCARD, 通配符类型参数
    PACKAGE, 对应于包元素的伪类型
    EXECUTABLE, 方法、构造方法或初始化程序
    OTHER, 为实现保留的类型
    UNION,
    INTERSECTION;

  4. Modifier,元素的修饰符(public,static,final…)

第三部分

  1. PackageElement

    表示一个包程序元素,提供对有关包以及其成员的信息的访问

  2. ExecutableElement

    表示方法、构造方法或初始化程序(静态或实例)元素,还包括注释类型元素。

  3. VariableElement

    表示变量、泛型等可变元素

  4. TypeElement

    表示类或接口程序元素,提供对其类型和成员信息的访问

    TypeMirror getSuperclass();

    返回此类型元素的直接超类

    List< ? extends TypeMirror> getInterfaces();

    返回直接由此类实现或直接由此接口扩展的接口类型

  5. TypeParameterElement

    表示一般类、接口、方法或构造方法元素的形式类型参数

    如: void methodA(String a, String b){..}

    其中 a , b 就是TypeParameterElement元素

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值