java序列化 作者:马育民 • 2020-11-28 11:16 • 阅读:10176 # 介绍 java提供了一种功能:将内存中的java对象,写入到硬盘上,就叫 **序列化** 是一个 **二进制文件**,包含 该java对象的 **包名**、**类名**、**属性名**、**属性值** 等等数据 [![](http://65242847.gitee.io/pic/java/QQ20201128111708.png)](http://65242847.gitee.io/pic/java/QQ20201128111708.png) ### 作用 保存到硬盘上,方便移动,在其他电脑上使用 网络传输,发送给另一台电脑 ### 反序列化 https://malaoshi.top/show_1IX7euam1L1.html # 实现 - 要序列化的类,必须实现 `Serializable` 接口,然后该类的对象才能序列化。否则报错 - static成员变量,不能被序列化 - 通过 `ObjectOutputStream` 流实现 ### 例子 可序列化的类 **注意:** 必须实现 `Serializable` 接口 ``` package org.malaoshi; import java.io.Serializable; public class Book implements Serializable { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } } ``` ### 测试 ``` Book book=new Book(); book.setName("java从入门到放弃"); ObjectOutputStream oos=new ObjectOutputStream(new FileOutputStream("1.j")); oos.writeObject(book); oos.close(); ``` 执行后会生成 `1.j` 的二进制文件 原文出处:http://malaoshi.top/show_1IX7eP93toT.html