當然,光序列化是不夠的,我們還需要反序列化,也就是如何從二進制串重新轉回對象。這樣當我們從文件中讀取或者在網絡的另一頭收到某個對象的二進制串之後,我們才能重新還原回那個對象。
Java 默認實現了自己的序列化,就是使用的內存數據。然而除了 Java 自己的序列化,我們還有很多中序列化方式,例如 hessian。或者說將 Java 對象轉成 json、xml 也是一種序列化。
舉一個非常簡單的例子,例如我們有一個對象 Integer v = 1;。當我們使用 hessian 對其序列化的時候,我們可能會拿到 I1 這樣的字串(並不確定 hessian 生成的串是不是真的是這樣,但是也差不多),其中 i 表示類型是 Integer,而 1 就是這個變量的值,而 I1 就是序列化後的二進制串(一個字符串)。
如果不想 序列化一個變量 可以使用transient關鍵字。