对象序列化流
-
對象序列化介紹
-
對象序列化:就是將對象保存到磁盤中,或者在網絡中傳輸對象
-
這種機制就是使用一個字節序列表示一個對象,該字節序列包含:對象的類型、對象的數據和對象中存儲的屬性等信息
-
字節序列寫到文件之后,相當于文件中持久保存了一個對象的信息
-
反之,該字節序列還可以從文件中讀取回來,重構對象,對它進行反序列化
-
-
對象序列化流: ObjectOutputStream
-
將Java對象的原始數據類型和圖形寫入OutputStream。 可以使用ObjectInputStream讀取(重構)對象。 可以通過使用流的文件來實現對象的持久存儲。 如果流是網絡套接字流,則可以在另一個主機上或另一個進程中重構對象
-
-
構造方法
方法名說明 ObjectOutputStream(OutputStream out) 創建一個寫入指定的OutputStream的ObjectOutputStream -
序列化對象的方法
方法名說明 void writeObject(Object obj) 將指定的對象寫入ObjectOutputStream -
示例代碼
-
學生類
-
測試類
public class ObjectOutputStreamDemo {public static void main(String[] args) throws IOException {//ObjectOutputStream(OutputStream out):創建一個寫入指定的OutputStream的ObjectOutputStreamObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("myOtherStream\\oos.txt"));//創建對象Student s = new Student("林青霞",30);//void writeObject(Object obj):將指定的對象寫入ObjectOutputStreamoos.writeObject(s);//釋放資源oos.close();} }注意事項
-
一個對象要想被序列化,該對象所屬的類必須必須實現Serializable 接口
-
Serializable是一個標記接口,實現該接口,不需要重寫任何方法
?
總結
- 上一篇: 复制Java文件打印流改进版
- 下一篇: 对象反序列化流