序列化就是一種用來處理對象流的機制。將對象的內容流化,將流化后的對象傳輸于網絡之間。
序列化是通過實現serializable接口,該接口沒有需要實現的方法,implement Serializable只是為了標注該對象是可被序列化的,使用一個輸出流(FileOutputStream)來構造一個ObjectOutputStream對象,接著使用ObjectOutputStream對象的writeObejct(Object object)方法就可以將參數的obj對象到磁盤,需要恢復的時候使用輸入流。
序列化是將對象轉換為容易傳輸的格式的過程。
例如,可以序列化一個對象,然后通過HTTP通過Internet在客戶端和服務器之間傳輸該對象。在另一端,反序列化將從流中心構造成對象。
一般程序在運行時,產生對象,這些對象隨著程序的停止而消失,但我們想將某些對象保存下來,這時,我們就可以通過序列化將對象保存在磁盤,需要使用的時候通過反序列化獲取到。
對象序列化的最主要目的就是傳遞和保存對象,保存對象的完整性和可傳遞性。
譬如通過網絡傳輸或者把一個對象保存成本地一個文件的時候,需要使用序列化。