ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
### 反射方式创建对象 ~~~ Class<?> aClass = Class.forName("domain.Person"); // 创建Class对象所表示对象的一个新实例,调用了Person的无参构造方法 Object o = aClass.newInstance(); System.out.println(o.toString()); //Person{name='null', age=0} ~~~ ~~~ // 实例化有参构造函数 Class<?> aClass = Class.forName("domain.Person"); Constructor<?> constructor = aClass.getConstructor(String.class, Integer.class); Person p = (Person) constructor.newInstance("sn", 11); System.out.println(p.toString());//Person{name='sn', age=11} ~~~ ### Api | 方法名称 | 作用 | | --- | --- | | getDeclaredMethods | 获取该类的所有方法 | | getReturnType() | 获取该类的返回值 | | getParameterTypes() | 获取传入参数 | | getDeclaredFields() | 获取该类的所有字段 | | setAccessible | 允许访问私有成员 | ### 禁止使用反射机制初始化 ``` 将构造函数私有化 ```