Java进阶(2) - 特殊对象(Class类)
存在的意义
位于java.lang包下,和java.lang.reflect包下的类共同支持java反射功能 jvm在类加载时,在堆中为每个类生成一个Class对象,用于记录每个类的属性、方法等信息, 同时每个对象生成时都有特殊的标记位来指向堆中的Class对象。 获取的三种方式 ?常用方法列表1、getName():返回String形式的该类的名称。?2、newInstance():根据某个Class对象产生其对应类的实例,它调用的是此类的默认构造方法(没有默认无参构造器会报错)?3、getClassLoader():返回该Class对象对应的类的类加载器。?4、getSuperClass():返回某子类所对应的直接父类所对应的Class对象?5、isArray():判定此Class对象所对应的是否是一个数组对象?6、getComponentType() :如果当前类表示一个数组,则返回表示该数组组件的 Class 对象,否则返回 null。??7、 getConstructor(Class[]) :返回当前 Class 对象表示的类的指定的公有构造子对象。??8、getConstructors() :返回当前 Class 对象表示的类的所有公有构造子对象数组。??9、getDeclaredConstructor(Class[]) :返回当前 Class 对象表示的类的指定已说明的一个构造子对象。??10、getDeclaredConstructors() :返回当前 Class 对象表示的类的所有已说明的构造子对象数组。??11、getDeclaredField(String) :返回当前 Class 对象表示的类或接口的指定已说明的一个域对象。??12、getDeclaredFields() :返回当前 Class 对象表示的类或接口的所有已说明的域对象数组。??13、 getDeclaredMethod(String,Class[]) :返回当前 Class 对象表示的类或接口的指定已说明的一个方法对象。??14、getDeclaredMethods() :返回 Class 对象表示的类或接口的所有已说明的方法数组。??15、getField(String) :返回当前 Class 对象表示的类或接口的指定的公有成员域对象。??16、getFields() :返回当前 Class 对象表示的类或接口的所有可访问的公有域对象数组。??17、getInterfaces() :返回当前对象表示的类或接口实现的接口。??18、getMethod(String,Class[]) :返回当前 Class 对象表示的类或接口的指定的公有成员方法对象。??19、getMethods() :返回当前 Class 对象表示的类或接口的所有公有成员方法对象数组,包括已声明的和从父类继承的方法。??20、isInstance(Object) :此方法是 Java 语言 instanceof 操作的动态等价方法。?21、isInterface() :判定指定的 Class 对象是否表示一个接口类型?22、isPrimitive() :判定指定的 Class 对象是否表示一个 Java 的基类型。?23、newInstance() :创建类的新实例 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Handler dispatch failed; nested exception is java.lang.
- 创建数组而不声明大小 – java
- 008、JAVA_缩小数据类型
- Java编程实现A*算法完整代码
- rx-java – share()和publish().autoConnect()之间有什么区
- Hibernate evict方法:从session缓存中清除对象
- Java中的InputStream的多个读取器
- java – 在Android应用程序中为HttpClient更改OpenSSL库
- java – 如何将常量重定向到Eclipse中的枚举?
- 为什么Java 7和Eclipse 3.8编译器不能用新的Java 7钻石操作