<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://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
    主站蜘蛛池模板: 很黄很色很刺激的视频免费| 亚洲国产精品一区二区久久hs| 人妻无码一区二区三区免费| 边摸边脱吃奶边高潮视频免费| 亚洲依依成人精品| 亚洲欧洲日产国码无码网站 | 亚洲黄片毛片在线观看| 99国产精品永久免费视频| 在线观看特色大片免费网站| 免费国产高清毛不卡片基地| 亚洲人av高清无码| 亚洲va在线va天堂va手机| 亚洲午夜久久影院| 亚洲av无码国产精品夜色午夜| 亚洲精品亚洲人成在线观看下载 | 国产精品亚洲精品| 亚洲国产美女在线观看| 亚洲精品高清久久| 亚洲AV无码乱码在线观看富二代| 亚洲欧洲自拍拍偷精品 美利坚| 国产高清免费观看| 波多野结衣久久高清免费 | 久久综合亚洲鲁鲁五月天| 亚洲精品无码av人在线观看| 亚洲精品成人a在线观看| yy6080亚洲一级理论| 亚洲欧美日韩综合俺去了| 亚洲欧洲国产综合| 亚洲国产成人va在线观看网址| 久久国产亚洲高清观看| 亚洲视频免费播放| 亚洲剧情在线观看| 亚洲深深色噜噜狠狠网站| 亚洲一卡二卡三卡四卡无卡麻豆| 亚洲成人福利网站| 亚洲第一成年网站大全亚洲| 亚洲尹人香蕉网在线视颅| 亚洲理论片中文字幕电影| 亚洲一级免费毛片| 亚洲AV性色在线观看| 亚洲AV无码一区二区三区久久精品|