Java创建对象的方式

来源:互联网 发布:孙权喜欢大乔吗 知乎 编辑:程序博客网 时间:2024/04/29 21:43

Java创建对象的五种方式:new关键字、Class类的newInstance方法、Constructor类的newInstance方法、clone方法和反序列化。
本文地址:http://blog.csdn.net/shanglianlm/article/details/70976531

1 new关键字

Person person1 = new Person();

2 Class类的newInstance方法

Person person21 = (Person) Class.forName("com.mingo.classNew.Person").newInstance();Person person22 = Person.class.newInstance();

3 Constructor类的newInstance方法

Constructor<Person> constructor=null;try {    constructor = Person.class.getConstructor();  } catch (NoSuchMethodException e1) {    e1.printStackTrace();  } catch (SecurityException e1) {    e1.printStackTrace(); }try {    Person person3 = constructor.newInstance(); } catch (IllegalArgumentException e) {    e.printStackTrace();} catch (InvocationTargetException e) {    e.printStackTrace();}

4 clone方法

Person person4 = (Person) person1.clone();

使用clone方法,类Person必须实现Cloneable接口并重写其定义的clone方法

5 反序列化

ObjectInputStream in=null;try {    in = new ObjectInputStream(new FileInputStream("data.obj"));  } catch (FileNotFoundException e) {    e.printStackTrace();  } catch (IOException e) {    e.printStackTrace();}try {    Person person5 = (Person) in.readObject(); } catch (IOException e) {    e.printStackTrace();}

为了使用反序列化一个对象,类Person必须实现Serializable接口

0 0