📅  最后修改于: 2023-12-03 15:15:57.304000             🧑  作者: Mango
Java newInstance() 方法用于返回一个指定类的实例。newInstance() 方法返回的实例被初始化为默认的值。它通常被用来创建类对象的实例,我们可以通过 newInstance() 方法来调用默认构造方法,实例化一个类。
public T newInstance() throws InstantiationException,IllegalAccessException
此方法没有参数。
返回指定类的一个新实例。
public class Person {
private String name;
private int age;
public Person() {
this.name = "xiaoming";
this.age = 18;
}
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public void info() {
System.out.println("姓名:" + name + "\n年龄:" + age);
}
}
public class Test {
public static void main(String[] args) {
try {
Person person = Person.class.newInstance();
person.info();
} catch (InstantiationException | IllegalAccessException e) {
e.printStackTrace();
}
}
}
输出结果:
姓名:xiaoming
年龄:18
在上面的示例中,我们通过 Person.class.newInstance()
这个方法来调用默认构造方法来实例化 Person 类的一个对象。实例化完成后,可以调用其方法 info()
输出对象的信息。如果类中没有无参数构造函数,那么newInstance()
方法会报IllegalAccessException
和 InstantiationException
异常。