读书人

[java]序列化跟反序列化

发布时间: 2012-09-14 11:53:44 作者: rapoo

[java]序列化和反序列化

当两个进程在远程通信时,彼此可以发送各种类型的数据,无论何种类型的数据,都会以二进制序列的形式在网络上传送,发送方需要把这个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)

读书人网 >编程

热点推荐