Java创建对象有哪几种方式?有什么区别?

方式一:构造方法:通过构造函数,手动new对象

方式二:静态工厂方法

方式三:反射

通过反射获取类模板对象,再通过Class对象的newInstcance()方法创建
通过反射获取类模板对象,再通过Constructor对象创建

方式四:克隆

实现超类Object的Cloneable方法

方式五:序列化

通过反序列化方式创建

1、序列化是干什么的?

  简单说就是为了保存在内存中的各种对象的状态,并且可以把保存的对象状态再读出来。虽然你可以用你自己的各种各样的方法来保存Object States,但是Java给你提供一种应该比你自己好的保存对象状态的机制,那就是序列化。

2、什么情况下需要序列化

  a)当你想把的内存中的对象保存到一个文件中或者数据库中时候;
  b)当你想用套接字在网络上传送对象的时候;
  c)当你想通过RMI传输对象的时候;

  

We only live once, and time just goes by.
原文地址:https://www.cnblogs.com/jycjy/p/6519587.html