<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 108,comments - 56,trackbacks - 0
          ☆什么是Clone
      Clone就是得到一個對象x的副本,而且x.clone() != x。Clone分為兩種:淺度克隆Shallow Clone和淺度克隆Deep Clone


           Object類有clone()方法: protected native Object clone() throws CloneNotSupportedException; 但是Object本身沒有implements  Cloneable,在執(zhí)行clone方法時,先檢查this.getClass()是否實現(xiàn)了cloneable接口,如果沒有實現(xiàn)Cloneable接口,clone()就會拋CloneNotSupportedException返回。否則就會創(chuàng)建一個新的this.getClass()的對象other,并將this每一個field的值賦值給other的對應field,然后返回other。

           接口Cloneable起一個標志作用(和Serializable類似),用來標志該類具有克隆功能。



          ☆實現(xiàn)Shallow clone
      Shallow Clone只是將基本類型賦值過去,對于對象傳的是引用。(String對于比較特別,[一般內(nèi)容一樣則引用一樣,輕量級模式])
    Shallow Clone
    輸出結(jié)果


          ☆Shallow Clone的問題
      因為對于對象只是拷貝引用,所有就會造成this對其中對象的修改引起other中相應對象的修改,例子如下:
    Shallow Clone問題
    輸出結(jié)果


          ☆Deep Clone
      有些時候我們不希望this與other之間的修改相互影響,這時就應該用深度克隆。對所有涉及到的對象也實現(xiàn)Clone。
    Deep Clone
    輸出結(jié)果


          ☆參考
          http://www.tkk7.com/orangelizq/archive/2007/10/17/153573.html
          http://www.tkk7.com/junky/archive/2007/05/08/115928.html
    posted on 2008-01-30 16:41 破繭而出 閱讀(709) 評論(0)  編輯  收藏 所屬分類: Java
    主站蜘蛛池模板: 国产精品日本亚洲777| 一级黄色片免费观看| 国产成人免费片在线视频观看| 成人精品综合免费视频| 久久亚洲日韩精品一区二区三区| 成年人免费网站在线观看| 一级毛片免费不卡| 亚洲国产成人va在线观看网址| 四虎影在线永久免费四虎地址8848aa | 久久亚洲日韩精品一区二区三区| 手机在线毛片免费播放| 香蕉免费一级视频在线观看| 97久久国产亚洲精品超碰热| 亚洲人成网7777777国产| 全免费一级毛片在线播放| 美女视频黄的免费视频网页| 亚洲成av人片在www鸭子| 亚洲精品国产品国语在线| 日本最新免费不卡二区在线| 日韩插啊免费视频在线观看| 精品亚洲成a人在线观看| 久久久无码精品亚洲日韩京东传媒| 亚洲av日韩片在线观看| 免费AA片少妇人AA片直播| 最近中文字幕免费大全| 亚洲AV噜噜一区二区三区| 亚洲第一页在线播放| 亚洲熟妇无码AV在线播放| 国产免费人视频在线观看免费| 69天堂人成无码麻豆免费视频| 大地资源网高清在线观看免费| 国产亚洲蜜芽精品久久| 亚洲高清有码中文字| 久久亚洲精品无码aⅴ大香| 中文字幕不卡亚洲 | 国产99久久亚洲综合精品| 亚洲福利电影在线观看| 亚洲AV日韩AV高潮无码专区| 亚洲另类少妇17p| 国产精品嫩草影院免费| 亚洲中文无码永久免费|