1.new关键字;2.clone;3.反射机制;4.序列化和反序列化。
举例验证:
除了序列化和反序列化没有举证,可以看出:
1.使用new关键字创建对象最灵活,无参数构造函数和有参构造函数均可以调用。
2.使用clone创建对象,需要实现
Cloneable接口+override clone()方法。
3.使用反射机制创建对象,有两种大方法:推荐第一种Class类的第二种方法即,p2的创建方法:
.class.newInstance()
注意!采用Class类只能调用无参构造函数!!
要是想要调用有参构造函数,推荐使用
Constructor类的newInstance方法
注意!带参数需要这样写:
Constructor<Person> constructor=Person.class.getConstructor(int.class,String.class); constructor.setAccessible(true);