站長資訊網
        最全最豐富的資訊網站

        java中為什么要實現Serializable序列化接口

        java中為什么要實現Serializable序列化接口

        我們在學習JavaSE的時候學習過ObjectInputStreamObjectOutputStream,當時是覺得只要一個對象要寫入文件就必須要實現Serializable接口。其實這樣理解完全沒有問題。

        一、問題引入

        Java中為什么要實現序列化接口呢?我們來看下圖:

        java中為什么要實現Serializable序列化接口

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

        相關視頻教程分享:java學習

        我們知道Java對象本質上是一個class字節碼,磁盤并不知道怎么將這個字節碼寫入到磁盤中,按何種方式去寫,所以需要"標識"一下,告訴磁盤:“我是個Java對象,你要按這種方式寫入到磁盤中”,只不過"按這種方式寫入到磁盤"。因此實現Serializable接口只是標識一下"我是個Java對象"

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

        java中為什么要實現Serializable序列化接口

        二、加深理解

        Java 提供了一種對象序列化的機制。用一個字節序列可以表示一個對象,該字節序列包含該對象的數據、對象的類型和對象中存儲的屬性等信息。字節序列寫出到文件之后,相當于文件中持久保存了一個對象的信息。

        反之,該字節序列還可以從文件中讀取回來,重構對象,對它進行反序列化。對象的數據、對象的類型和對象中存儲的數據信息,都可以用來在內存中創建對象。看圖理解序列化:

        java中為什么要實現Serializable序列化接口

        相關文章教程推薦:java入門程序

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 精品人妻大屁股白浆无码| 国产成人精品日本亚洲11| 日产欧美国产日韩精品| 国产成人精品一区在线| 精品国精品无码自拍自在线| 亚洲第一区精品日韩在线播放| 国产精品色视频ⅹxxx | 精品精品国产欧美在线小说区| 丝袜美腿国产精品视频一区| 国产精品美女久久久久| 日韩精品专区AV无码| 四虎国产成人永久精品免费| 无码人妻精品一区二区三区久久| 亚洲精品麻豆av| 久久久精品视频免费观看| 国内精品久久久久久中文字幕| 四虎永久在线精品国产免费| 四虎最新永久在线精品免费| 老司机69精品成免费视频| 国产精品久久免费| 欧美精品中文字幕亚洲专区| 无码精品人妻一区二区三区漫画 | 精品无码人妻一区二区三区品| 亚洲精品乱码久久久久久自慰| 久久久久亚洲精品天堂久久久久久 | 国产免费久久精品99久久| 91久久精品无码一区二区毛片| 国产精品久久久久久福利69堂| 992tv精品视频tv在线观看| 欧美午夜精品久久久久久浪潮| 精品国产福利盛宴在线观看| 国产午夜精品一区二区三区不卡| 国产乱子伦精品免费视频| 国产99久久九九精品无码| 国产精品成人小电影在线观看| 国产精品小视频免费无限app | 在线精品亚洲一区二区三区| 亚洲精品麻豆av| 无码人妻精品一区二区三区夜夜嗨| 欧美精品videosse精子| 精品国偷自产在线|