Class类的介绍和基本使用方法
下文笔者讲述Class类的简介及基本使用方法简介说明,如下所示:
一、Class类的介绍
Class类的对象用于表示class文件在类中的结构,每一个class文件在内存中都是一个单例对象 Class clz = String.class:即为String在内存中的class文件。
二、Class类的使用
1.获得Class类的对象
通过Class clz = Class.forName(“完全限定名”); 获得Class类的对象封装class文件 完全限定名:包名+类名. 通过类名获得Class对象,类名.class
2.Class类中提供的方法
读取clz对象表示的class文件中的构造方法
反射将类中的构造方法封装为对象,Constructor的对象。
Constructor<?>[] cons = clz.getConstructors();
for(Constructor c:cons) {
System.out.println("student----"+c);
}
注意:getConstructors()的返回值为一个数组,且该方法的参数是一个可变参数。
可变参数:允许传入长度可变的参数
通过反射获得Student类中的某个构造方法
Constructor noArgs=clz.getConstructor(null);
通过反射获得三个参数的构造方法,指定对应的参数对应的Class类的对象作为实参
Constructor inArgs=clz.getConstructor(Integer.class,String.class,String.class);
读取clz对象表示的class文件中的成员方法
clz.getMethods()
只能获得公共方法,包括从父类中继承的方法
例:Method[] methods = clz.getMethods();
for(Method m:methods) {
//打印出得到的方法名
System.out.println(“student-method====”+m);
}
clz.getDeclaredMethods()
只能获得本类中的成员方法(public,private,protect.default)
例:Method[] methods2 = clz.getDeclaredMethods();
for(Method m:methods2) {
System.out.println(“student-method2====”+m);
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


