gbk

          java.io.serializable

          接口 java.io.Serializable

          public interface Serializable

          實(shí)現(xiàn) java.io.Serializable 接口的類是可序列化的。沒有實(shí)現(xiàn)此接口的類將不能使它們的任一狀態(tài)被序列化或逆序列化。序列化類的所有子類本身都是可序列化的。這個(gè)序列化接口沒有任何方法和域,僅用于標(biāo)識(shí)序列化的語意。

          允許非序列化類的子類型序列化,子類型可以假定負(fù)責(zé)保存和恢復(fù)父類型的公有的、保護(hù)的和(如果可訪問)包的域的狀態(tài)。只要該類(擴(kuò)展)有一個(gè)無參構(gòu)造子, 可初始化它的狀態(tài),那么子類型就可承擔(dān)上述職責(zé)。在這種情況下申明一個(gè)可序列化的類是一個(gè)錯(cuò)誤。此錯(cuò)誤將在運(yùn)行時(shí)被檢測。

          在逆序列化期間,將使用非序列化類的公用的或保護(hù)的無參構(gòu)造子對它的域進(jìn)行初始化。可序列化子類必須能訪問父類的無參構(gòu)造子。它的所有域?qū)南鄳?yīng)流中被恢復(fù)。

          當(dāng)遍歷一個(gè)圖象時(shí),很可能遇到一個(gè)不支持序列化接口的對象。此時(shí)將拋出 NotSerializableException 異常,且標(biāo)識(shí)該非序列化對象類。

          在序列化處理過程中需要特定句柄的類,必須使用如下這些恰當(dāng)?shù)臉?biāo)記實(shí)現(xiàn)特定的方法:

           private void writeObject(java.io.ObjectOutputStream out)
          throws IOException
          private void readObject(java.io.ObjectInputStream in)
          throws IOException, ClassNotFoundException;

          writeObject 方法負(fù)責(zé)寫特定類的對象的狀態(tài),以至相應(yīng)的 readObject 方法能恢復(fù)它。 通過調(diào)用 out.defaultWriteObject 可激活保存對象域的缺省機(jī)制。此方法不必關(guān)心狀態(tài)是屬于它的父類還是子類。 使用 writeObject 方法或基本類型支持的 DataOutput 方法將每個(gè)域的狀態(tài)保存到 ObjectOutputStream 中。

          readObject 方法負(fù)責(zé)從此流中讀取并恢復(fù)類的域。它可能調(diào)用 in.defaultReadObject 方法來調(diào)用該對象的非靜態(tài)和非暫時(shí)的域的缺省恢復(fù)機(jī)制。 defaultReadObject 方法使用該流中的信息,用當(dāng)前對象中的已命名域分配保存在流中該對象的相應(yīng)域。當(dāng)類已改進(jìn)增加了新域時(shí),這個(gè)接口也做相應(yīng)處理。此方法不必關(guān)心狀態(tài)是屬于它的父類還是子類。 使用 writeObject 方法或基本類型支持的 DataOutput 方法將每個(gè)域的狀態(tài)保存到 ObjectOutputStream 中。

          posted on 2007-11-04 12:21 百科 閱讀(235) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           

          My Links

          Blog Stats

          常用鏈接

          留言簿(2)

          隨筆檔案

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 墨竹工卡县| 基隆市| 商水县| 彰化市| 武功县| 昔阳县| 彩票| 乐昌市| 台江县| 揭阳市| 阿拉尔市| 青阳县| 双柏县| 崇左市| 灌阳县| 望谟县| 洞口县| 庆安县| 城市| 舟曲县| 丰都县| 叙永县| 永春县| 新绛县| 延津县| 高尔夫| 邵武市| 宝坻区| 剑川县| 武强县| 余庆县| 姜堰市| 中卫市| 库尔勒市| 汝州市| 弋阳县| 呈贡县| 尼勒克县| 孟津县| 裕民县| 乌恰县|