本文共 869 字,大约阅读时间需要 2 分钟。
Class是用来表示java运行时,类或者接口的类对象。有点拗口,有点像人是地球上你我他的称呼。你是人,我是人,他也是人^_^。 因此枚举、注解、数组、java基本类型、void关键字,都是一种类。
Class是没有公共构造函数,因此不能对其进行普通的实例化(new),其实例化是由java虚拟机在进行类装载的时候,由类加载器调用defineClass方法进行构造的。
Class对象是我们在使用java反射时,常常使用到的对象。
常用的方法:
forName(String className) | 返回与给定字符串名称的类或接口关联的类对象,参数需要是完成的类路径,创建类对象的常用方法 |
getAnnotation(Class<A> annotationClass) | 如果存在指定类型的元素注释,则返回该元素的注释,否则为空 |
getAnnotations() | 返回当前类上所有的注解(含继承)对象的数组 |
getClassLoader() | 获取类加载器 |
getDeclaredAnnotations() | 返回直接作用在本类上的注解(不含继承)的数组 |
getDeclaredFields() | 返回这个类对象表示的类或接口声明的所有字段数组(包含primary的) |
getDeclaredMethods() | 返回这个类自身声明的所有方法数组(不包含继承的方法) |
getName() | 返回这个类的类名 |
getResource(String name) | 查找具有给定名称的资源,返回的是URL对象 |
getResourceAsStream(String name) | 跟getResource类似,只不过返回的是InputStream对象 |
getSuperclass() | 返回表示该类所表示的实体的父类 |
isAnnotation() | 如果此类对象表示注释类型,则返回true |
isInterface() | 如果该对象表示接口,则为true |
newInstance() | 创建由这个类对象表示的类的新实例,要求被创建的类必须有无参构造函数,否则会有运行时异常 |
转载地址:http://bqcdi.baihongyu.com/