久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      java中為什么要實(shí)現(xiàn)Serializable序列化接口

      java中為什么要實(shí)現(xiàn)Serializable序列化接口

      我們在學(xué)習(xí)JavaSE的時(shí)候?qū)W習(xí)過ObjectInputStreamObjectOutputStream,當(dāng)時(shí)是覺得只要一個(gè)對象要寫入文件就必須要實(shí)現(xiàn)Serializable接口。其實(shí)這樣理解完全沒有問題。

      一、問題引入

      Java中為什么要實(shí)現(xiàn)序列化接口呢?我們來看下圖:

      java中為什么要實(shí)現(xiàn)Serializable序列化接口

      Java程序中要往磁盤中寫入一個(gè)數(shù)據(jù),這個(gè)數(shù)據(jù)如果是一個(gè)普通字符串,那么沒有問題,所有機(jī)器都能正常識別字符串,即使需要轉(zhuǎn)成對應(yīng)的字節(jié),計(jì)算機(jī)也知道怎么將字符串轉(zhuǎn)成對應(yīng)的字節(jié)(碼表),但是如果是一個(gè)Java對象那就麻煩了,磁盤并不知道你傳遞的是一個(gè)Java對象,換句話說,磁盤不知道按照什么格式把Java對象轉(zhuǎn)換成對應(yīng)的字節(jié)。

      相關(guān)視頻教程分享:java學(xué)習(xí)

      我們知道Java對象本質(zhì)上是一個(gè)class字節(jié)碼,磁盤并不知道怎么將這個(gè)字節(jié)碼寫入到磁盤中,按何種方式去寫,所以需要"標(biāo)識"一下,告訴磁盤:“我是個(gè)Java對象,你要按這種方式寫入到磁盤中”,只不過"按這種方式寫入到磁盤"。因此實(shí)現(xiàn)Serializable接口只是標(biāo)識一下"我是個(gè)Java對象"

      如果你懂了上述文字的理解,也就不難懂下述圖了:

      java中為什么要實(shí)現(xiàn)Serializable序列化接口

      二、加深理解

      Java 提供了一種對象序列化的機(jī)制。用一個(gè)字節(jié)序列可以表示一個(gè)對象,該字節(jié)序列包含該對象的數(shù)據(jù)、對象的類型和對象中存儲(chǔ)的屬性等信息。字節(jié)序列寫出到文件之后,相當(dāng)于文件中持久保存了一個(gè)對象的信息。

      反之,該字節(jié)序列還可以從文件中讀取回來,重構(gòu)對象,對它進(jìn)行反序列化。對象的數(shù)據(jù)、對象的類型和對象中存儲(chǔ)的數(shù)據(jù)信息,都可以用來在內(nèi)存中創(chuàng)建對象。看圖理解序列化:

      java中為什么要實(shí)現(xiàn)Serializable序列化接口

      相關(guān)文章教程推薦:java入門程序

      贊(0)
      分享到: 更多 (0)
      ?
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號