java反射与获取构造器相关的代码练习
package com.hpe.reflect;
import java.lang.reflect.Constructor;
import org.junit.Test;
public class TestConstructor {
@Test
public void test1() throws Exception {
Class clazz = Person.class;
Person p = (Person)clazz.newInstance();
System.out.println(p);
}
@Test
public void test2() throws Exception {
Class clazz = Class.forName("com.hpe.reflect.Person");
Constructor[] cons = clazz.getDeclaredConstructors();
for (Constructor c : cons) {
System.out.println(c);
}
}
@Test
public void test3() throws Exception {
Class clazz = Class.forName("com.hpe.reflect.Person");
Constructor c = clazz.getDeclaredConstructor();
Person p1 = (Person)c.newInstance();
System.out.println(p1);
Constructor cons = clazz.getDeclaredConstructor(String.class,int.class);
Person p = (Person)cons.newInstance("jack",18);
System.out.println(p);
}
}