有了Class类对象能做什么
1、创建类的对象:调用Class对象的newInstance()方法
1.1、类必须有一个无参构造器
1.2、类的构造器的访问权限需要足够
2、没有无参构造器也可以创建对象
只要在操作的时候明确调用类中的构造方法
并且将参数传递进去之后
才可以进行实例化操作
步骤
2.1、通过Class类的getDeclaredConstructor(Class paramterTypes)获取本类的指定形式构造器
2.2、像构造器的形参中传递一个第项数组,里面包含构造器所需要的参数
2.3、在ConStructor类中存在一个方法
public class Person { private String name; public Person(String name) { this.name = name; } public Person() { System.out.println("无参构造器"); } public String getName() { return name; } public void setName(String name) { this.name = name; } public void show(){ System.out.println("show方法..."); } public int display(int age){ System.out.println("age:" + age); return age; } @Override public String toString() { return "Person{" + "name='" + name + '\'' + '}'; } }
@Test public void test5() throws IllegalAccessException, InstantiationException { Class clazz = Person.class; //创建对应的运行时对象 Person p = (Person) clazz.newInstance();//调用的时Person的无参构造器 System.out.println(p); }