当两个进程在进行远程通讯时,彼此能够发送各类类型的数据。不管是何种类型的数据,都会以二进制序列的形式在网络上传送。发送方须要把这个对象转换为字节序列,才能在网络上传送;接收方则须要把字节序列再恢复为对象。网络
把对象转换为字节序列的过程称为对象的序列化。spa
把字节序列恢复为对象的过程称为对象的反序列化。对象
序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。能够对流化后的对象进行读写操做,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操做时所引起的问题。
序列化的实现:将须要被序列化的类实现Serializable接口,该接口没有须要实现的方法,implements Serializable只是为了标注该对象是可被序列化的,而后使用一个输出流(如:FileOutputStream)来构造一个ObjectOutputStream(对象流)对象,接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就能够将参数为obj的对象写出(即保存其状态),要恢复的话则用输入流。接口
对象的序列化主要有两种用途:进程
1)把对象的字节序列永久地保存到硬盘上,一般存放在一个文件中;内存
2)在网络上传送对象的字节序列。it
串行化和并行化class
串行化也叫作序列化,就是把存在于内存的对象数据转化成能够保存成硬盘文件的形式去存储;
并行化也叫反序列化,就是把序列化后的硬盘文件加载到内存,从新变成对象数据.
也就是把内存中对象数据变成硬盘文件.序列化