案例代码如下:
package com.stu.sever.basic;
import java.lang.reflect.InvocationTargetException;
//三种方式:Class.forName("完整路径")
//2、可以动态创建对象
//clz.getConstructor().newInstance();
public class ReflectTest {
public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException {
//三种方式
//1、对象.getClass
Iphone iphone =new Iphone();
Class clz = iphone.getClass();
//2、类class
clz = Iphone.class;
//3、类.class();
clz = Class.forName("com.stu.sever.basic.Iphone");
//创建对象
Iphone iphone2 = (Iphone)clz.getConstructor().newInstance();
System.out.println(iphone2);
}
}
class Iphone{
public Iphone() {}
}