Java反射 - getDeclaredConstructor().newInstance()得到实例化对象
- class.newInstance()实例化只能直接调用构造参数
- class.getDeclaredConstructor().newInstance()实例化可以调用静态类和构造参数
实现类
public static void main(String[] args) throws NoSuchMethodException, InvocationTargetException, InstantiationException, IllegalAccessException {
UserService.class.getDeclaredConstructor().newInstance();
System.out.println("=====================");
UserService.class.newInstance();
}
class对象代码
public class UserService {
static {
System.out.println("static");
}
public UserService() {
System.out.println("test");
}
}
得到的结果
![202111291240338](https://fastly.jsdelivr.net/gh/HeiDaotu/img-bucket/img/202206061229409.png)