推荐链接:
总结——》【Java】
总结——》【Mysql】
总结——》【Spring】
总结——》【SpringBoot】
总结——》【MyBatis、MyBatis-Plus】
序列化是一种技术,Java只是以某种形式实现了序列化
序列化 :将数据结构或对象转换成二进制数据流的过程。
反序列化:将在序列化过程中所生成的二进制数据流转换成数据结构或者对象的过程。
序列化 :为了对象可以跨平台存储,和进行网络传输 (也可以在分布式应用系统中传递数据)
反序列化:将字符序列方式存储的数据转换成能够识别的对象信息
本质上存储和网络传输 都需要经过 把一个对象状态保存成一种跨平台识别的字节格式,然后其他的平台才可以通过字节信息解析还原对象信息。
需要进行“跨平台存储”和”网络传输”的数据,都需要进行序列化。
在Java进行应用开发的时候,用户的个人信息,包括密码、电话号码、具体住址这些隐私信息的时候,就需要防止对象被序列化,如果被序列化用于网络传输,则很有可能会造成安全问题。
java.io.ObjectOutputStream:对象输出流
writeObject(Object obj):对参数指定的obj对象进行序列化,把得到的字节序列写到一个目标输出流中
java.io.ObjectInputStream:对象输入流
readObject():从一个源输入流中读取字节序列,再把它们反序列化为一个对象,并将其返回
参考链接:Java——》对象如何进行拷贝
1、属性前加 static 关键字:static代表类的状态
2、属性前加 transient 关键字:transient代表对象的临时数据