public class InstantiationClass {
public static void main(String[] args) throws ClassNotFoundException {
Teacher teacher = new Teacher("张三", "123456");
// 方式一:调用Class类的静态方法forName(String className)
Class<?> c1 = Class.forName("com.loner.mj.reflection.Teacher");
// 方式二:已知某个类的实例,调用该实例的getClass()方法,getClass是Object类中的方法。
Class<? extends Teacher> c2 = teacher.getClass();
// 方式三:已知具体类,通过类的class属性获取,该方法最安全可靠,程序性能最高
Class<Teacher> c3 = Teacher.class;
// 方式四:通过基本内置类型的包装类的TYPE属性获得CLass实例
Class<Integer> c4 = Integer.TYPE;
// 方式五:通过当前子类的Class对象获得父类的Class对象
Class<?> c5 = c1.getSuperclass();
}
}
原创文章,作者:wdmbts,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/269386.html