Java.lang.Class 类

简介

java.lang.Class 类实例表示正在运行的 Java 应用程序中的类和接口。它没有公共构造函数。


类声明

以下是 java.lang.Class 类的声明 −

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

类方法

序号 方法 & 描述
1 <U> Class<? extends U> asSubclass(Class<U> clazz)

此方法将这个 Class 对象转换为表示指定类对象所表示的类的子类。

2 T cast(Object obj)

此方法将一个对象强制转换为该 Class 对象所表示的类或接口。

3 boolean desiredAssertionStatus()

如果要在调用此方法时对其进行初始化,此方法将返回将分配给此类的断言状态。

4 static Class<?> forName(String className)

此方法返回与具有给定字符串名称的类或接口关联的 Class 对象。

5 static Class<?> forName(String name, boolean initialize, ClassLoader loader)

此方法使用给定的类加载器返回与具有给定字符串名称的类或接口关联的 Class 对象。

6

<A extends Annotation> A getAnnotation(Class<A> annotationClass)

如果存在这样的注释,则此方法返回此元素的指定类型的注释,否则返回 null。

7 Annotation[] getAnnotations()

此方法返回此元素上存在的所有注释。

8 String getCanonicalName()

此方法返回 Java 语言规范定义的基础类的规范名称。

9 Class<?>[] getClasses()

此方法返回一个包含 Class 对象的数组,这些对象表示所有公共类和接口,这些公共类和接口是此 Class 对象所表示的类的成员。

10 ClassLoader getClassLoader()

该方法返回类的类加载器。

11 Class<?> getComponentType()

该方法返回表示数组组件类型的Class。

12 Constructor<T> getConstructor(Class<?>... parameterTypes)

该方法返回一个 Constructor 对象,该对象反映了该 Class 对象所代表的类的指定公共构造函数。

13 Constructor<?>[] getConstructors()

此方法返回一个包含 Constructor 对象的数组,该数组反映了此 Class 对象所表示的类的所有公共构造函数。

14 Annotation[] getDeclaredAnnotations()

此方法返回直接出现在此元素上的所有注释。

15 Class<?>[] getDeclaredClasses()

此方法返回一个 Class 对象数组,反映声明为该 Class 对象所表示的类的成员的所有类和接口。

16 Constructor<T> getDeclaredConstructor(Class<?>... parameterTypes)

该方法返回一个 Constructor 对象,该对象反映了该 Class 对象所代表的类或接口的指定构造函数。

17 Constructor<?>[] getDeclaredConstructors()

该方法返回一个 Constructor 对象数组,反映了该 Class 对象所代表的类所声明的所有构造函数。

18 Field getDeclaredField(String name)

此方法返回一个 Field 对象,该对象反映了该 Class 对象所表示的类或接口的指定声明字段。

19 Field[] getDeclaredFields()

该方法返回一个 Field 对象数组,反映了该 Class 对象所代表的类或接口声明的所有字段。

20 Method getDeclaredMethod(String name, Class<?>... parameterTypes)

该方法返回一个 Method 对象,该对象反映了该 Class 对象所代表的类或接口的指定声明方法。

21 Method[] getDeclaredMethods()

该方法返回一个 Method 对象数组,反映了该 Class 对象所代表的类或接口声明的所有方法。

22 Class<?> getDeclaringClass()

如果此 Class 对象表示的类或接口是另一个类的成员,则返回表示它在其中声明的类的 Class 对象。

23 Class<?> getEnclosingClass()

该方法返回底层类的直接封闭类。

24 Constructor<?> getEnclosingConstructor()

如果此 Class 对象表示构造函数中的本地或匿名类,则返回表示底层类的直接封闭构造函数的 Constructor 对象。

25 Method getEnclosingMethod()

如果此 Class 对象表示方法中的本地或匿名类,则返回一个 Method 对象,表示底层类的直接封闭方法。

26 T[] getEnumConstants()

此方法返回此枚举类的元素,如果此 Class 对象不表示枚举类型,则返回 null。

27 Field getField(String name)

该方法返回一个 Field 对象,该对象反映了该 Class 对象所代表的类或接口的指定公共成员字段。

28 Field[] getFields()

此方法返回一个包含 Field 对象的数组,该数组反映了此 Class 对象表示的类或接口的所有可访问公共字段。

29 Type[] getGenericInterfaces()

该方法返回表示该对象所代表的类或接口直接实现的接口的Types。

30 Type getGenericSuperclass()

此方法返回表示此 Class 所表示的实体(类、接口、原始类型或 void)的直接超类的 Type。

31 Class<?>[] getInterfaces()

该方法决定了该对象所代表的类或接口所实现的接口。

32 Method getMethod(String name, Class<?>... parameterTypes)

该方法返回一个 Method 对象,该对象反映了该 Class 对象所代表的类或接口的指定公共成员方法。

33 Method[] getMethods()

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

34 int getModifiers()

此方法返回此类或接口的 Java 语言修饰符,以整数编码。

35 String getName()

此方法以字符串形式返回此 Class 对象表示的实体(类、接口、数组类、原始类型或 void)的名称。

36 Package getPackage()

这个方法获取这个类的包。

37 ProtectionDomain getProtectionDomain()

该方法返回该类的 ProtectionDomain。

38 URL getResource(String name)

此方法查找具有给定名称的资源。

39 InputStream getResourceAsStream(String name)

此方法查找具有给定名称的资源。

40 Object[]getSigners()

此方法获取此类的签名者。

41 String getSimpleName()

此方法返回源代码中给出的底层类的简单名称。

42 Class<? super T> getSuperclass()

此方法返回表示该 Class 所表示的实体(类、接口、原始类型或 void)的超类的 Class。

43 TypeVariable<Class<T>>[]getTypeParameters()

此方法返回一个 TypeVariable 对象数组,这些对象表示由此 GenericDeclaration 对象表示的泛型声明所声明的类型变量,按声明顺序。

44

boolean isAnnotation()

如果此 Class 对象表示注释类型,则此方法返回 true。

45

boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)

如果此元素上存在指定类型的注释,则此方法返回 true,否则返回 false。

46 boolean isAnonymousClass()

当且仅当底层类是匿名类时,此方法才返回 true。

47 boolean isArray()

此方法确定此 Class 对象是否表示数组类。

48 boolean isAssignableFrom(Class<?> cls)

此方法确定此 Class 对象表示的类或接口是否与指定的 Class 参数表示的类或接口相同,或者是其超类或超接口。

49 boolean isEnum()

当且仅当该类在源代码中声明为枚举时,此方法才返回 true。

50 boolean isInstance(Object obj)

此方法确定指定的 Object 是否与该 Class 表示的对象赋值兼容。

51 boolean isInterface()

此方法确定指定的 Class 对象是否表示接口类型。

52 boolean isLocalClass()

当且仅当底层类是本地类时,此方法才返回 true。

53

boolean isMemberClass

当且仅当底层类是成员类时,此方法才返回 true。

54 boolean isPrimitive()

此方法确定指定的 Class 对象是否表示原始类型。

55 boolean isSynthetic()

如果这个类是一个合成类,这个方法返回true; 否则返回 false。

56 T newInstance()

此方法创建此 Class 对象表示的类的新实例。

57 String toString()

此方法将对象转换为字符串。


继承的方法

这个类继承了以下类的方法 −

  • java.lang.Object