3 回答

TA貢獻(xiàn)1869條經(jīng)驗 獲得超4個贊
序列化就是一種用來處理對象流的機制,所謂對象流也就是將對象的內(nèi)容進(jìn)行流化??梢詫α骰蟮膶ο筮M(jìn)行讀寫操作,也可將流化后的對象傳輸于網(wǎng)絡(luò)之間。序列化是為了解決在對對象流進(jìn)行讀寫操作時所引發(fā)的問題。序列化的實現(xiàn):將需要被序列化的類實現(xiàn)Serializable接口,該接口沒有需要實現(xiàn)的方法,implements Serializable只是為了標(biāo)注該對象是可被序列化的,然后使用一個輸出流(如:FileOutputStream)來構(gòu)造一個ObjectOutputStream(對象流)對象,接著,使用ObjectOutputStream對象的writeObject(Object obj)方法就可以將參數(shù)為obj的對象寫出(即保存其狀態(tài)),要恢復(fù)的話則用輸入流。
序列化:序列化是將對象轉(zhuǎn)換為容易傳輸?shù)母袷降倪^程。例如,可以序列化一個對象,然后使用 HTTP 通過 Internet 在客戶端和服務(wù)器之間傳輸該對象。在另一端,反序列化將從該流重新構(gòu)造對象。
是對象永久化的一種機制。
確切的說應(yīng)該是對象的序列化,一般程序在運行時,產(chǎn)生對象,這些對象隨著程序的停止運行而消失,但如果我們想把某些對象(因為是對象,所以有各自不同的特性)保存下來,在程序終止運行后,這些對象仍然存在,可以在程序再次運行時讀取這些對象的值,或者在其他程序中利用這些保存下來的對象。這種情況下就要用到對象的序列化。
對象序列化的最主要的用處就是在傳遞,和保存對象(object)的時候,保證對象的完整性和可傳遞性。譬如通過網(wǎng)絡(luò)傳輸,或者把一個對象保存成一個文件的時候,要實現(xiàn)序列化接口

TA貢獻(xiàn)1818條經(jīng)驗 獲得超8個贊
Object serialization 允許你將實現(xiàn)了Serializable接口的對象轉(zhuǎn)換為字節(jié)序列,這些字節(jié)序列可以被完全存儲以備以后重新生成原來的對象。
舉個例子:
網(wǎng)絡(luò)傳輸?shù)臅r候,可以傳字符串,亦可以傳對象object,例如socket,傳字符串的時候接收方很容易解析出來,但是,傳一個對象的時候,對方讀完字節(jié)流后,不知道你傳的什么對象,所以沒辦法給轉(zhuǎn)成原來的對象并解析對象的屬性,這時候就要用到序列化和反序列化。
類實現(xiàn)序列化接口,socket發(fā)送這個對象的字節(jié)流,接收方到流后就可以將流反序列化成對象,然后使用對象的方法和屬性。
添加回答
舉報