java类为什么要序列化_Java 中的类为什么要实现序列化呢
很多人覺得自己寫得 Java 代碼中,新建的 pojo 對象要實現(xiàn)序列化是為了要保存到硬盤上,其實呢,實現(xiàn)序列化和保存到硬盤上沒有必然的關(guān)系。
以下圖舉例:
假設(shè)左邊的是你的電腦,也就是客戶端,右邊的是服務(wù)器。之前你的客戶端和服務(wù)器可能都在同一個電腦上,都是 Windows 下,那么右邊的服務(wù)器也可以放到 Linux 中,這就涉及到左右兩個不同的服務(wù)器了。中間用一條豎線分隔一下。
客戶端可以調(diào)用服務(wù)器,所以肯定要傳遞參數(shù)。假設(shè)你傳遞的是字符串,沒有問題,所有的機器都可以識別正常的字符串。
那么現(xiàn)在假設(shè)你傳遞的參數(shù)是一個 Java 對象,比如叫 cat。服務(wù)器并沒有那么智能,它并不會知道你傳遞的是一個 Java 對象,而不是其他類型的數(shù)據(jù),它識別不了 Java 對象。
Java 對象本質(zhì)上是 class 字節(jié)碼,服務(wù)器并不能根據(jù)這個字節(jié)碼識別出該 Java 對象。所以,要提供一個公共的格式,不僅 Windows 能識別,你的服務(wù)器也能識別的公共的格式。
我們將 Java 對象轉(zhuǎn)換成公共的格式叫做序列化,將公共的格式轉(zhuǎn)換成對象叫做反序列化。保存到磁盤只是序列化的一種表現(xiàn)形式。
就這么簡單,小小的問題,希望對大家有所幫助。
總結(jié)
以上是生活随笔為你收集整理的java类为什么要序列化_Java 中的类为什么要实现序列化呢的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 赞美是朵花,赠人玫瑰,手有余香
- 下一篇: 投票 java_Java基础之简单投票程