先创建一个单例的工厂,再写一个createObject()方法,接收类类型返回该类的实例即可
public class Factory {
private static Factory factory = new Factory();
private Factory(){
}
public static Factory getInstance(){
return factory;
}
public static Object createObject(Class clz) throws IllegalAccessException, InstantiationException {
Object obj = clz.newInstance();
return obj;
}
}
被工厂创建的类
public class Student {
public Student() {
System.out.println("学生类创建了");
}
}
测试类
public class Test {
public static void main(String[] args) throws InstantiationException, IllegalAccessException {
Factory factory = Factory.getInstance();
Student student = (Student) factory.createObject(Student.class);
System.out.println(student);
}
}
运行