接口的使用
java.lang.constant.ClassDesc
使用 ClassDesc 的包
包
描述
提供对 Java 编程语言的设计至关重要的类。
代表 nominal descriptors 运行时实体(例如类或方法句柄)和类文件实体(例如常量池条目或
invokedynamic 调用站点)的类和接口。
java.lang.invoke 包提供用于与 Java 虚拟机交互的低级原语。
-
ClassDesc 在 java.lang 中的用法
-
ClassDesc 在 java.lang.constant 中的用法
java.lang.constant 中的字段声明为 ClassDesc修饰符和类型Field描述static final ClassDescConstantDescs.CD_booleanClassDesc表示原始类型booleanstatic final ClassDescConstantDescs.CD_Booleanstatic final ClassDescConstantDescs.CD_byteClassDesc表示原始类型bytestatic final ClassDescConstantDescs.CD_Bytestatic final ClassDescConstantDescs.CD_CallSitestatic final ClassDescConstantDescs.CD_charClassDesc表示原始类型charstatic final ClassDescConstantDescs.CD_Characterstatic final ClassDescConstantDescs.CD_Classstatic final ClassDescConstantDescs.CD_ClassDescstatic final ClassDescConstantDescs.CD_Collectionstatic final ClassDescConstantDescs.CD_ConstantBootstrapsstatic final ClassDescConstantDescs.CD_ConstantDescstatic final ClassDescConstantDescs.CD_DirectMethodHandleDescstatic final ClassDescConstantDescs.CD_doubleClassDesc表示原始类型doublestatic final ClassDescConstantDescs.CD_Doublestatic final ClassDescConstantDescs.CD_DynamicCallSiteDescstatic final ClassDescConstantDescs.CD_DynamicConstantDescstatic final ClassDescConstantDescs.CD_Enumstatic final ClassDescConstantDescs.CD_EnumDescstatic final ClassDescConstantDescs.CD_Exceptionstatic final ClassDescConstantDescs.CD_floatClassDesc表示原始类型floatstatic final ClassDescConstantDescs.CD_Floatstatic final ClassDescConstantDescs.CD_intClassDesc表示原始类型intstatic final ClassDescConstantDescs.CD_Integerstatic final ClassDescConstantDescs.CD_Liststatic final ClassDescConstantDescs.CD_longClassDesc表示原始类型longstatic final ClassDescConstantDescs.CD_Longstatic final ClassDescConstantDescs.CD_Mapstatic final ClassDescConstantDescs.CD_MethodHandlestatic final ClassDescConstantDescs.CD_MethodHandleDescstatic final ClassDescConstantDescs.CD_MethodHandleDesc_Kindstatic final ClassDescConstantDescs.CD_MethodHandlesstatic final ClassDescConstantDescs.CD_MethodHandles_Lookupstatic final ClassDescConstantDescs.CD_MethodTypestatic final ClassDescConstantDescs.CD_MethodTypeDescstatic final ClassDescConstantDescs.CD_Numberstatic final ClassDescConstantDescs.CD_Objectstatic final ClassDescConstantDescs.CD_Setstatic final ClassDescConstantDescs.CD_shortClassDesc表示原始类型shortstatic final ClassDescConstantDescs.CD_Shortstatic final ClassDescConstantDescs.CD_Stringstatic final ClassDescConstantDescs.CD_Throwablestatic final ClassDescConstantDescs.CD_VarHandlestatic final ClassDescConstantDescs.CD_VarHandleDescstatic final ClassDescConstantDescs.CD_voidClassDesc表示原始类型voidstatic final ClassDescConstantDescs.CD_Voidjava.lang.constant 中返回 ClassDesc 的方法修饰符和类型方法描述default ClassDescClassDesc.arrayType()default ClassDescClassDesc.arrayType(int rank) default ClassDescClassDesc.componentType()返回此 ClassDesc 的组件类型,如果它描述数组类型,否则返回null。DynamicConstantDesc.constantType()default ClassDescdefault ClassDescstatic ClassDesc返回类或接口类型的 ClassDesc,给定类或接口的名称,例如"java.lang.String"。static ClassDesc返回类或接口类型的 ClassDesc,给定类或接口的包名称和非限定(简单)名称。static ClassDescClassDesc.ofDescriptor(String descriptor) 给定类、接口、数组或原始类型的描述符字符串,返回 ClassDesc。static ClassDescClassDesc.ofInternalName(String name) 返回类或接口类型的 ClassDesc,给出内部形式的类或接口的名称,例如"java/lang/String"。DirectMethodHandleDesc.owner()返回一个ClassDesc描述声明该标称描述符所描述的方法或字段的类。MethodTypeDesc.parameterArray()将参数类型作为数组返回。MethodTypeDesc.parameterType(int index) 返回此 MethodTypeDesc 描述的方法类型的第index个参数的参数类型。MethodTypeDesc.returnType()获取此 MethodTypeDesc 描述的方法类型的返回类型。返回类型中包含 ClassDesc 类型参数的 java.lang.constant 中的方法java.lang.constant 中的方法,参数类型为 ClassDesc修饰符和类型方法描述MethodTypeDesc.changeParameterType(int index, ClassDesc paramType) 返回与此相同的 MethodTypeDesc,只是单个参数类型已更改为指定类型。MethodTypeDesc.changeReturnType(ClassDesc returnType) 返回与此相同的 MethodTypeDesc,但具有指定的返回类型。MethodTypeDesc.insertParameterTypes(int pos, ClassDesc... paramTypes) 返回与此相同的 MethodTypeDesc,只是插入了一系列附加参数类型。static DirectMethodHandleDescMethodHandleDesc.of(DirectMethodHandleDesc.Kind kind, ClassDesc owner, String name, String lookupDescriptor) 创建一个 MethodHandleDesc 对应于声明方法的调用、构造函数的调用或对字段的访问。static MethodTypeDesc给定返回类型和参数类型,返回一个 MethodTypeDesc。static DirectMethodHandleDescConstantDescs.ofCallsiteBootstrap(ClassDesc owner, String name, ClassDesc returnType, ClassDesc... paramTypes) static <T> ConstantDescDynamicConstantDesc.ofCanonical(DirectMethodHandleDesc bootstrapMethod, String constantName, ClassDesc constantType, ConstantDesc[] bootstrapArgs) 返回动态常量的标称描述符,如果常量引导程序是众所周知的并且更具体的标称描述符类型(例如,ClassDesc)可用,则将其转换为更具体的类型。static DirectMethodHandleDescConstantDescs.ofConstantBootstrap(ClassDesc owner, String name, ClassDesc returnType, ClassDesc... paramTypes) static DirectMethodHandleDescMethodHandleDesc.ofConstructor(ClassDesc owner, ClassDesc... paramTypes) 返回对应于构造函数调用的 MethodHandleDescstatic DirectMethodHandleDescMethodHandleDesc.ofField(DirectMethodHandleDesc.Kind kind, ClassDesc owner, String fieldName, ClassDesc fieldType) 创建一个 MethodHandleDesc 对应于访问字段的方法句柄。static DirectMethodHandleDescMethodHandleDesc.ofMethod(DirectMethodHandleDesc.Kind kind, ClassDesc owner, String name, MethodTypeDesc lookupMethodType) 创建一个 MethodHandleDesc 对应于声明的方法或构造函数的调用。static <T> DynamicConstantDesc<T>DynamicConstantDesc.ofNamed(DirectMethodHandleDesc bootstrapMethod, String constantName, ClassDesc constantType, ConstantDesc... bootstrapArgs) 返回动态常量的标称描述符。java.lang.constant 中的构造函数,参数类型为 ClassDesc修饰符构造方法描述protectedDynamicConstantDesc(DirectMethodHandleDesc bootstrapMethod, String constantName, ClassDesc constantType, ConstantDesc... bootstrapArgs) 为动态常量创建标称描述符。 -
ClassDesc 在 java.lang.invoke 中的用法
java.lang.invoke 中返回 ClassDesc 的方法java.lang.invoke 中的方法,参数类型为 ClassDesc修饰符和类型方法描述static VarHandle.VarHandleDesc返回对应于数组类型的VarHandle的 VarHandle.VarHandleDesc。static VarHandle.VarHandleDesc返回对应于实例字段的VarHandle的 VarHandle.VarHandleDesc。static VarHandle.VarHandleDescVarHandle.VarHandleDesc.ofStaticField(ClassDesc declaringClass, String name, ClassDesc fieldType) 返回对应于静态字段的VarHandle的 VarHandle.VarHandleDesc。