第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java:深度克隆/復制實例的推薦解決方案

Java:深度克隆/復制實例的推薦解決方案

哆啦的時光機 2019-06-15 18:34:33
Java:深度克隆/復制實例的推薦解決方案我想知道是否有一種在java中進行深度克隆/復制實例的推薦方法。我有三個解決方案,但我可能會錯過一些,我想聽聽你的意見。編輯:包括Bohzo提議和精煉問題:它更多的是關(guān)于深度克隆而不是淺克隆。自己動手:在屬性之后用手工屬性對克隆進行編碼,并檢查是否也克隆了可變實例。專業(yè):-對將要執(zhí)行的工作的控制-快速處決缺點:-編寫和維護繁瑣-易出錯(復制/粘貼失敗,丟失屬性,可重分配的可變屬性)使用反射:使用您自己的反射工具或外部助手(如JakartaCommon-bean),很容易編寫一個泛型復制方法,它將在一行中完成任務。專業(yè):-易于書寫-無維護缺點:-減少對發(fā)生情況的控制-如果反射工具也不克隆子對象,則容易出現(xiàn)易變對象的錯誤-執(zhí)行較慢使用克隆框架:使用一個為您服務的框架,比如:Common-lang序列化UtilsJava深度克隆庫杜澤爾克里奧專業(yè):-與反思相同-更多地控制將被克隆的東西。缺點:-每個可變實例都是完全克隆的,即使在層次結(jié)構(gòu)的末尾也是如此。-執(zhí)行起來可能會很慢使用字節(jié)碼工具在運行時編寫克隆javassit, BCEL或Cglib可能被用來像一只手一樣快速地生成一個專用的克隆人。有人知道用這些工具中的一個實現(xiàn)這個目的庫嗎?我錯過了什么?你推薦哪一個?謝謝。
查看完整描述

3 回答

?
Cats萌萌

TA貢獻1805條經(jīng)驗 獲得超9個贊

自2.07版以來Kryo支持淺/深克隆:

Kryo kryo = new Kryo();SomeClass someObject = ...SomeClass copy1 = kryo.copy(someObject);SomeClass copy2 = kryo.copyShallow(someObject);

Kryo是快速的,在他們的頁面上,你可以找到一份在生產(chǎn)中使用它的公司名單。


查看完整回答
反對 回復 2019-06-15
  • 3 回答
  • 0 關(guān)注
  • 797 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號