您的位置:首页 > 编程语言 > Java开发

[java]序列化和反序列化

2012-08-17 00:12 211 查看
当两个进程在远程通信时,彼此可以发送各种类型的数据,无论何种类型的数据,都会以二进制序列的形式在网络上传送,发送方需要把这个java对象转换为字节序列,才能在网络上传送,接收方则需要把字节序列再恢复为java对象

序列化(串行化)---把java对象转化为字节序列的过程

---jvm默认的序列化

---实现serializable接口---如果一个类的父类实现了可序列化接口,子类一样可以序列化

---对象的属性是要可序列化的,否则该对象不能被序列化(Bitmap类型 的不能被序列化)

---ObjectOutputStream---将java对象的基本数据类型和图形写入OutputStream

---构造方法:ObjectOutputStream()/ObjectOutputStream(OutputStream out)

---用writeObject()方法将对象写入流中

---全部自己序列化----实现Externalizable接口

---transient关键字---序列化部分属性

---部分用jvm默认序列化、部分自己序列化

---要求在类中添加两个方法

private void writeObject(java.io.ObjectOutputStream s) throws java.io.IOException

private void readObject(java.io.ObjectInputStream s) throws java.io.IOException, ClassNotFoundException

反序列化---把字节对象恢复为java对象的过程

---ObjectInputStream---对以前使用ObjectOuputStream写入的基本数据和对象进行反序列化

---构造方法:ObjectInputStream()/ObjectInputStream(InputStream in)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: