java序列化有什么用 javaBean為什么要實(shí)現(xiàn)序列化Serializable接口?
javaBean為什么要實(shí)現(xiàn)序列化Serializable接口?Java的“對(duì)象序列化”可以將實(shí)現(xiàn)可序列化接口的對(duì)象轉(zhuǎn)換為一組字節(jié),以便將來(lái)需要使用此對(duì)象時(shí),可以恢復(fù)字節(jié)數(shù)據(jù)并相應(yīng)地重建對(duì)象。即使在跨
javaBean為什么要實(shí)現(xiàn)序列化Serializable接口?
Java的“對(duì)象序列化”可以將實(shí)現(xiàn)可序列化接口的對(duì)象轉(zhuǎn)換為一組字節(jié),以便將來(lái)需要使用此對(duì)象時(shí),可以恢復(fù)字節(jié)數(shù)據(jù)并相應(yīng)地重建對(duì)象。即使在跨網(wǎng)絡(luò)環(huán)境中也是如此,這意味著序列化可以自動(dòng)補(bǔ)償操作系統(tǒng)中的差異。換句話說(shuō),您可以在windows機(jī)器上創(chuàng)建一個(gè)對(duì)象,序列化它,然后通過(guò)網(wǎng)絡(luò)將它傳輸?shù)経NIX機(jī)器,然后在那里重建它。您不必?fù)?dān)心數(shù)據(jù)在不同平臺(tái)上的表示方式、字節(jié)順序或任何其他細(xì)節(jié)。
為什么JAVA對(duì)象需要實(shí)現(xiàn)序列化?
序列化實(shí)際上很容易理解。如果你現(xiàn)在正在做一個(gè)項(xiàng)目,項(xiàng)目被分成不同的小組,而其他小組成員不在同一個(gè)城市,你怎么把你寫(xiě)的那些課程交給其他小組成員呢?此時(shí),我們需要使用序列化。簡(jiǎn)單地說(shuō):序列化就是將內(nèi)存中的類(lèi)或?qū)ο螅帉?xiě)的類(lèi)都存儲(chǔ)在內(nèi)存中)更改為可以存儲(chǔ)在存儲(chǔ)介質(zhì)中的流。將類(lèi)序列化為流后,可以通過(guò)Internet將其傳輸給其他人。您還可以將其他人的序列化流反序列化為內(nèi)存中的對(duì)象。就這樣
Java中的序列化機(jī)制可以序列化一個(gè)實(shí)例對(duì)象(只有對(duì)象的屬性值,而不是所謂的方法)。
將狀態(tài)信息寫(xiě)入字節(jié)流,字節(jié)流可以通過(guò)套接字傳輸,也可以持久化到存儲(chǔ)數(shù)據(jù)庫(kù)或文件系統(tǒng);然后在必要時(shí)通過(guò)字節(jié)流中的信息重建同一對(duì)象。
一般來(lái)說(shuō),要使類(lèi)可序列化,只需簡(jiǎn)單的實(shí)現(xiàn)即可java.io.Serializable可序列化接口。