今天看書學了個貌似很牛逼的東西,可以用objectoutputstream把物件寫入檔案,可以用objectinputstream從檔案讀取物件。
作為菜鳥,我淺顯的認為,這是個非常有用的功能。比如,開啟乙個應用程式,它有視窗,必然是個物件,視窗的位置,大小,還有內部控制項的擺放位置,肯定是在物件中由成員屬性來設定的,如果在關閉程式之前,將這個物件寫入檔案,當下次再開啟這個軟體的時候,讀取這個檔案中的物件,這樣,就記錄了使用者的個人習慣,是乙個不錯的功能。當然,還可能通過改登錄檔什麼的來實現這樣的機制。有些習慣還可以直接儲存到伺服器的資料庫上,這些都是可以的。
這裡,把**再敲一敲,複習鞏固一下。
先寫乙個最常用的employee類,它必須實現乙個serializable介面,才能被序列化。**如下:
class employee implementsserializable
public
string tostring()
}
接下來主函式裡寫上除錯的**,**如下:
trycatch
(ioexception e)
物件序列化流
物件序列化流 objectoutputstream 構造方法 方法名說明 objectoutputstream outputstream out 建立乙個寫入指定的outputstream的objectoutputstream 序列化物件的方法 方法名說明 void writeobject obje...
物件序列化流
用物件序列化流序列化了乙個物件後,假如我們修改了物件所屬的類檔案,讀取資料會不會出問題呢?答 會出問題,丟擲invalidclas ception異常 如果出問題了,如何解決呢?答 給物件所屬類加乙個serialversionuid private static final long serialv...
序列化 物件 流 列印流
j a 提供了一種物件序列化的機制。用乙個位元組序列可以表示乙個物件,該位元組序列包含該物件的資料 物件的型別和物件中儲存的屬性等資訊。位元組序列寫出到檔案之後,相當於檔案中持久儲存了乙個物件的資訊。反之,該位元組序列還可以從檔案中讀取回來,重構物件,對它進行反序列化。物件的資料 物件的型別和物件中...