Java.lang.Class类简介说明

转自:

Java.lang.Class类简介说明

下文笔者将讲述Java.lang.Class类的相关简介说明,如下所示:

Java.lang Class功能

Java Class类实例的功能:
可用于表示一个正在运行的Java的类和接口
Class类实例是Java虚拟机用于存储类及接口的相关信息,用于供操作相应的类,如Java的反射机制

Java.lang Class 如何声明呢?

public final class Class<T>
   extends Object
      implements Serializable, GenericDeclaration, Type, AnnotatedElement

Java.lang.Class类中拥有的方法如下表所示

方法备注说明
<U> Class<? extends U> asSubclass(Class<U> clazz)此方法投射此Class对象,以表示指定的Class对象所表示的类的子类。
T cast(Object obj)此方法投射的目的是通过此Class对象所表示的类或接口。
boolean desiredAssertionStatus()此方法返回将被分配到这个类,如果它在调用此方法时被初始化的断言状态。
static Class<?> forName(String className)此方法返回的类或接口与给定的字符串名称相关联的Class对象。
static Class<?> forName(String name, boolean initialize, ClassLoader loader)此方法返回的类或接口与给定的字符串名称相关联的Class对象,使用给定的类加载器。
<A extends Annotation> A getAnnotation(Class<A> annotationClass)此方法返回这个元素的注解指定类型,如果存在这样的注释,否则返回null。
Annotation[] getAnnotations()此方法返回当前这个元素上的所有注释。
String getCanonicalName()此方法返回底层类的Java语言规范中定义的标准名称。
Class<?>[] getClasses()此方法返回一个包含代表所有的公共类,并且是此Class对象所表示的类的成员接口的Class对象的数组。
ClassLoader getClassLoader()此方法返回类加载器的类。
Class<?> getComponentType()此方法返回类表示数组的组件类型。
Constructor<T> getConstructor(Class<?>... parameterTypes)该方法返回一个Constructor对象,它反映此Class对象所表示的类的指定公共构造函数。
Constructor<?>[] getConstructors()此方法返回一个包含某些Constructor对象反映此Class对象所表示类的所有公共构造一个数组。
Annotation[] getDeclaredAnnotations()此方法返回直接存在于此元素上的所有注释。
Class<?>[] getDeclaredClasses()此方法返回Class对象反映声明此Class对象所表示类成员的类和接口组成的数组。
Constructor<T> getDeclaredConstructor(Class<?>... parameterTypes)该方法返回一个Constructor对象,它反映此Class对象所表示的类或接口的指定构造函数。
Constructor<?>[] getDeclaredConstructors()此方法返回Constructor对象的所有Class对象表示类声明的构造函数的数组。
Field getDeclaredField(String name)该方法返回一个Field对象,它反映此Class对象所表示的类或接口指定已声明字段。
Field[] getDeclaredFields()此方法返回Field对象的所有Class对象表示的类或接口中声明的字段的数组。
Method getDeclaredMethod(String name, Class<?>... parameterTypes)该方法返回一个Method对象,它反映此Class对象所表示的类或接口的指定已声明方法。
Method[] getDeclaredMethods()此方法返回Method对象的所有Class对象表示的类或接口中声明的方法的数组。
Class<?> getDeclaringClass()如果此Class对象所表示的类或接口是另一个类的成员,返回被声明的类的Class对象。
Class<?> getEnclosingClass()此方法返回直接封闭类的底层类。
Constructor<?> getEnclosingConstructor()如果此Class对象表示一个构造函数中的一个本地或匿名类,则返回一个代表底层类的立即封闭构造函数构造对象。
Method getEnclosingMethod()如果此Class对象表示的方法中的一个本地或匿名类,则返回一个代表底层类的立即封闭方法的Method对象。
T[] getEnumConstants()此方法返回枚举类,如果此Class对象不表示枚举类型返回空元素。
Field getField(String name)该方法返回一个Field对象,它反映此Class对象所表示的类或接口的指定公共成员字段。
Field[] getFields()此方法返回一个包含Field对象反映此Class对象所表示的类或接口的所有可访问公共字段的数组。
Type[] getGenericInterfaces()此方法返回表示由该对象表示的类或接口直接实现的接口类型。
Type getGenericSuperclass()此方法返回表示此Class所表示的实体(类,接口,基本类型或void)的直接超类的类型。
Class<?>[] getInterfaces()此方法确定由该对象表示的类或接口实现的接口。
Method getMethod(String name, Class<?>... parameterTypes)该方法返回一个Method对象,它反映此Class对象所表示的类或接口的指定公共成员方法。
Method[] getMethods()

此方法返回一个包含对象的方法反映的类或接口的所有公共成员方法此Class对象所表示,包括那些由类或接口以及那些从父类继承声明数组。

int getModifiers()此方法返回Java语言修饰符为这个类或者接口,编码为一个整数。
String getName()此方法返回此Class对象所表示的实体(类,接口,数组类,基本类型或void)的名字,作为一个字符串。
Package getPackage()此方法获取这个类的包。
ProtectionDomain getProtectionDomain()此方法返回这个类ProtectionDomain。
URL getResource(String name)此方法找到具有给定名称的资源。
InputStream getResourceAsStream(String name)此方法找到具有给定名称的资源。
Object[] getSigners()此方法得到这个类的签名。
String getSimpleName()此方法返回底层类的简单名称在源代码中给出。
Class<? super T> getSuperclass()此方法返回的类来表示此Class所表示的实体(类,接口,基本类型或void)的超类。
TypeVariable<Class<T>>[]getTypeParameters()此方法返回一个代表由GenericDeclaration对象表示的一般声明,在声明的顺序声明的类型变量TypeVariable对象的数组。
boolean isAnnotation()如果此Class对象表示一个注释类型此方法返回true。
boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)如果一个注解指定类型是存在于此元素上此方法返回true,否则返回false。
boolean isAnonymousClass()当且仅当底层类是匿名类此方法返回true。
boolean isArray()此方法确定该Class对象表示一个数组类。
boolean isAssignableFrom(Class<?> cls)此方法判定此Class对象所表示的类或接口可以是一样的,或者说是一个超类或超接口,由指定Class参数所表示的类或接口。
boolean isEnum()当且仅当这个类被声明为在源代码中的枚举此方法返回true。
boolean isInstance(Object obj)此方法确定指定的对象赋值兼容与此Class所表示的对象。
boolean isInterface()此方法判定指定Class对象表示一个接口类型。
boolean isLocalClass()当且仅当底层类是局部类此方法返回true。
boolean isMemberClass()当且仅当底层类是成员类此方法返回true。
boolean isPrimitive()此方法确定指定的Class对象表示一个基本类型。
boolean isSynthetic()如果这个类是合成的类此方法返回true;否则返回false。
T newInstance()此方法创建此Class对象所表示类的新实例。
String toString()此方法的对象转换为字符串。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值