<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,在執行clone方法時,先檢查this.getClass()是否實現了cloneable接口,如果沒有實現Cloneable接口,clone()就會拋CloneNotSupportedException返回。否則就會創建一個新的this.getClass()的對象other,并將this每一個field的值賦值給other的對應field,然后返回other。

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



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


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


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


          ☆參考
          http://m.tkk7.com/orangelizq/archive/2007/10/17/153573.html
          http://m.tkk7.com/junky/archive/2007/05/08/115928.html
    posted on 2008-01-30 16:41 破繭而出 閱讀(709) 評論(0)  編輯  收藏 所屬分類: Java
    主站蜘蛛池模板: 亚洲中文字幕无码av| 亚洲AV无码久久精品蜜桃| 久久精品免费网站网| 一级女性全黄久久生活片免费| 暖暖免费高清日本中文| JLZZJLZZ亚洲乱熟无码| 日韩在线视频播放免费视频完整版| 日韩午夜免费视频| 成人亚洲国产精品久久| 亚洲精品WWW久久久久久| 久久www免费人成精品香蕉| 日韩精品亚洲aⅴ在线影院| 中文字幕免费在线视频| 亚洲av最新在线网址| 99久热只有精品视频免费观看17| 亚洲视频.com| 国产精品成人观看视频免费| 亚洲一卡二卡三卡| 国产在线观看免费完整版中文版| 男女猛烈xx00免费视频试看| 久久国产成人亚洲精品影院 | 美女黄色毛片免费看| 亚洲免费一区二区| 国内精品免费在线观看| 亚洲国产亚洲片在线观看播放| 日韩免费无码一区二区视频| 日本激情猛烈在线看免费观看| 亚洲国产精品成人久久| 在线观看成人免费视频不卡| 亚洲一卡一卡二新区无人区| 亚洲 综合 国产 欧洲 丝袜| 青青青国产手机频在线免费观看| 亚洲精品一二三区| 亚洲美女在线国产| 97碰公开在线观看免费视频| 国产精品亚洲片在线花蝴蝶| 亚洲国产精品久久久久婷婷老年| 最近中文字幕mv手机免费高清| 一区二区三区免费在线观看| 亚洲激情视频网站| 亚洲国产精品一区二区九九 |