.class,Class.forName()和.getClass()的区别
来源:2-1 Class类及对象实例化
mahsiaoko
2021-01-16 23:10:32
如题,这三个有什么区别
1回答
好帮手慕小脸
2021-01-17
同学你好,
Class.class用来返回 Class 对象。
Class.forName()是反射机制的一种,用于获取指定的Class对象。
getClass()方法是获取该对象的class(类),可以通过返回的Class对象获取类的相关信息
区别如下:
1) .getClass()是动态的,其余是静态的。
2) .class和class.forName()只能返回类内field的默认值,getClass可以返回当前对象中field的最新值
3) Class.forName() 返回的是一个类,.newInstance() 后才创建一个对象,Class.forName()的作用是要求JVM查找并加载指定的类,也就是说JVM会执行该类的
祝学习愉快~
相似问题