官术网_书友最值得收藏!

2.4.6 為克隆使用序列化

序列化機制有一種很有趣的用法:即提供了一種克隆對象的簡便途徑,只要對應的類是可序列化的即可。其做法很簡單:直接將對象序列化到輸出流中,然后將其讀回。這樣產生的新對象是對現有對象的一個深拷貝(deep copy)。在此過程中,我們不必將對象寫出到文件中,因為可以用ByteArrayOutputStream將數據保存到字節數組中。

正如程序清單2-4所示,要想得到clone方法,只需擴展SerialCloneable類,這樣就完事了。

程序清單2-4 serialClone/SerialCloneTest.java

我們應該當心這個方法,盡管它很靈巧,但是它通常會比顯式地構建新對象并復制或克隆數據域的克隆方法慢得多。

主站蜘蛛池模板: 汉源县| 宁南县| 白银市| 琼结县| 道真| 延边| 虎林市| 福建省| 资中县| 勐海县| 获嘉县| 三台县| 汝州市| 唐河县| 铁岭市| 图们市| 南皮县| 阿拉尔市| 沾益县| 兴安县| 桓台县| 彩票| 安宁市| 龙海市| 吐鲁番市| 大化| 南召县| 扶风县| 昌邑市| 大竹县| 南宫市| 桃源县| 内丘县| 丹阳市| 雅江县| 巴青县| 哈密市| 抚顺县| 灵宝市| 贵州省| 新绛县|