对象序列化流

对象序列化:就是将对象保存到磁盘中,或者在网络中传输对象 这种机制就是使用一个字节序列表示一个对象,该字节序列包含:对象的类型、对象的数据和对象中存储的属性等信息 字节序列写到文件之后,相当于文件中持久保存了一个对象的信息

反之,该字节序列还可以从文件中读取回来,重构对象,对它进行反序列化

要实现序列化和反序列化就要使用对象序列化流和对象反序列化流: 1、对象序列化流:ObjectOutputStream 2、对象反序列化流:ObjectInputStream

 

对象序列化流:ObjectOutputStream类

该类在java.io包下。该类继承了OutputStream,即该类是字节输出流。该类是具体的类,实现了两个接口ObjectOutput、ObjectStreamConstants

该类将Java对象的原始数据类型和图形写入字节输出流OutputStream。可以使用ObjectInputStream读取(重构)对象

该类可以通过使用流的文件来实现对象的持久存储。如果流是网络套接字流,则可以在另一个主机上或另一个进程中重构对象

 

该类的构造方法如下

构造方法作用
ObjectOutputStream(OutputStream out)创建一个写入指定OutputStream的ObjectOutputStream

该类的方法如下

方法作用
writeObject(Object obj)将指定的对象写入ObjectOutputStream。该方法可以实现对象序列化

 

注意 1、一个对象要想被序列化,该对象所属的类必须实现Serializable接口 2、Serializable是一个标记接口,实现该接口,不需要重写任何方法

 

对象序列化流的练习