概念:class文件在读取后都会放入Class对象中,一个对象只能放一个类的信息,放入的Class对象称为 类模版对象 注:Java不是动态语言,但具有动态性
操作:
获取class对象
- 调用对象的getClass()方法,根据实例对象获取,只能用于引用数据类型,无动态
- 调用类的Class()方法,根据类名获取,可以用于基本数据类型,无动态
- 调用Class对象的forName(“//全限定名”)根据类型的字符串名称获取,只能有类类型,有动态
通过Class对象探究类的信息
- 关键字 : Field(属性) Constructor(构造) Method(方法) Declared(被声明的)
- 探究属性的方法;
getFields() 只能得到所有的公共属性
getField(“//公共属性名”) 只能得到指定的公共属性
getDeclaredFileds()得到所有属性方法
getDeclaredField(”//属性名”)得到指定属性
- 探究构造的方法
getConstructors()只能得到所有的公共构造
getConstructor(“//公共构造名”) 只能得到指定的公共构造
getDeclaredConstructors()得到所有构造方法
getDeclaredConstructors(”//构造名”)
- 探究行为的方法