Demo09.java 816 B

123456789101112131415161718192021222324
  1. package J20250806.reflection;
  2. import java.lang.reflect.Constructor;
  3. /**
  4. * @author WanJl
  5. * @version 1.0
  6. * @title Demo09
  7. * @description
  8. * 案例2:构造方法调用
  9. * 定义一个包含私有构造方法(接收String参数)和公共无参构造方法的Person类,
  10. * 使用反射分别创建这两种构造方法对应的实例对象。
  11. * @create 2025/8/6
  12. */
  13. public class Demo09 {
  14. public static void main(String[] args) throws NoSuchMethodException {
  15. Class<Person> personClass = Person.class;
  16. //获取无参公共的构造方法对象
  17. Constructor<Person> constructor = personClass.getConstructor();
  18. //创建私有构造方法,接收String参数
  19. Constructor<Person> declaredConstructor = personClass.getDeclaredConstructor(String.class);
  20. }
  21. }