1什么是 Java 的序列化,如何实现 Java 的序列化?列举在哪
些程序中见过 Java 序列化?
Java 中的序列化机制能够将一个实例对象(只序列化对象的属性值,而不会去序列化什么所谓的方法。)的状态信息写入到一个字节流中使其可以通过 socket 进行传输、或者持久化到存储数据库或文件系统中;然后在需要的时候通过字节流中的信息来重构一个相同的对象。一般而言,要使得一个类可以序列化,只需简单实现 java.io.Serializable 接口即可。
对象的序列化主要有两种用途:
1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中;
2) 在网络上传送对象的字节序列。
在很多应用中,需要对某些对象进行序列化,让它们离开内存空间,入住物理硬盘,以便长期存。比如最常见的是 Web 服务器中的Session 对象,当有 10 万用户并发访问,就有可能出现 10 万个Session 对象,内存 可能吃不消,于是 Web 容器就会把一些seesion 先序列化到硬盘中,等要
用了,再把保存在硬盘中的对象还原到内存中。 当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是 何种类型的数据,都会以二进制序列的形式在网络上传送。发送方需要把这 个 Java 对象转换为字节序列,才能在网络上传送;接收方则需要把字节序列再恢复为 Java