java串行化处理_【Java】串行化(补充原型模式)

串行化(Serialization)也称序列化,它使得一个程序可以把一个完整的对象写到一个Byte流里面。通过反串行化(Deserialization)可以从一个Byte流里读出一个事先存储在里面的完整对象。

串行化可以把Java对象和原始数据类型转换成一个合适于某种网络或文件系统的Byte流,Java程序员不需要直接处理存储在硬盘上的原始数据,就可以轻易将一个Java对象和一个二进制流之间相互转换。

反串行化有时也称并行化,并行化可以将被串行化的对象内部的状态恢复,也就是说重新实例化被串行化的对象。

将一个Java对象串行化必须实现java.io.Serializable接口或者java.io.Externalizable接口。Serializable接口是一个标识接口,没有声明任何方法,Externalizable接口是Serializable接口的子接口,声明了两个方法,writeExternal(ObjectOutput out)和readExternal(ObjectInput in)方法。writeExternal是串行化的时候调用的,readExternal是反串行化时调用的,实现该方法必须实现这两个方法,所以在实际运用中,Serializable接口使用较为普遍。

具体怎么将一个Java对象串行化和反串行化,可以看我的另一篇博文【设计模式】对象的克隆-原型模式,这篇博文主要是对原型模式中提到的序列化进行补充说明。

Author:立礼

Sign:人生不要有太多的幻想,而要有更多的行动。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值