java.lang.Class
一、概述
1.java.lang.Class类是Java中的反射中心。
2.java是大小写敏感的,因此Class和关键字class并不冲突
3.当我们创建一个类Student时,Java会自动生成一个内容是Students的Class类的对象。
4.Class类的对象只能由JVM创建,无法通过new来创建。
5.Class类的作用是运行时提供或获得某个对象的类型信息,可用于反射。
二、Class类对象的获取
方法一
public class Students{}
Class obj=Class.forName("Students");//对Students类执行类加载,并初始化。
方法二
public class Students{}
Students st=new Students();
Class obj=st.getClass();//获取完毕
Class obj2=st.getSuperclass();//获取Students类的父类的类型
方法三
Class obj=String.class;
Class objj=int.class;//**使用此种方法JVM不会自动加载该类,自然也不会进行初始化。**
三通过Class类的对象来获取目标类的实例的方法
方法一
Class obj=Class.forName("Students");
Object studentsInstance=obj.newInstance();//使用此种方法JVM会加载该类,并且执行初始化即静态代码块和静态变量的赋值,**但是动态构造代码块不会被执行**
方法二
Class<Students> obj=Students.class;
Students stu=obj.newInstance();
浙公网安备 33010602011771号