黑马程序员技术交流社区

标题: 什么是java序列化 [打印本页]

作者: 石绍洋    时间: 2017-4-26 16:39
标题: 什么是java序列化
本帖最后由 石绍洋 于 2017-4-27 15:56 编辑

什么是java序列化,如何实现java序列化?Serializable接口的作用?
     我们有时候将一个java对象变成字节流的形式传出去或者从一个字节流中恢复成一个java对象,
     例如,要将java对象存储到硬盘或者传送给网络上的其他计算机,
     这个过程我们可以自己写代码去把一个java对象变成某个格式的字节流再传输,
     但是,jre本身就提供了这种支持,我们可以调用OutputStream的writeObject方法来做,
     如果要让java 帮我们做,要被传输的对象必须实现serializable接口,这样,javac编译时就会进行特殊处理,                                       编译的类才可以被writeObject方法操作,这就是所谓的序列化。     需要被序列化的类必须实现Serializable接口,该接口是一个mini接口,
     其中没有需要实现的方法,implements Serializable只是为了标注该对象是可被序列化的。

     例如,在web开发中,如果对象被保存在了Session中,tomcat在重启时要把Session对象序列化到硬盘,
     这个对象就必须实现Serializable接口。如果对象要经过分布式系统进行网络传输或通过rmi等远程调用,
     这就需要在网络上传输对象,被传输的对象就必须实现Serializable接口。

作者: kevin0    时间: 2017-4-27 00:49
赞一个

作者: zeng1002    时间: 2017-4-27 00:50
谢谢指点,受教了,今天学io首次接触到序列化





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2