国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

Java Clone(類的復制)實例代碼

2019-11-26 16:14:19
字體:
來源:轉載
供稿:網友

自己實現了一遍:

復制代碼 代碼如下:

public class A implements Cloneable {
public String str[];

A() {
str = new String[2];
}

public Object clone() {
A o = null;
try {
o = (A) super.clone();
} catch (CloneNotSupportedException e) {
e.printStackTrace();
}
o.str = new String[2];
return o;
}
}

void run() throws Exception {
A a1 = new A(), a2 = new A();
a1.str[0] = "a"; a1.str[1] = "b";
a2 = (A) a1.clone();
a2.str[0] = "c"; a2.str[1] = "d";
System.out.println(a1.str[0] + " " + a2.str[0]);
}

結果:

a c

1.

復制代碼 代碼如下:

public class A implements Cloneable {
 public String name;

 public Object clone() {
  A o = null;
  try {
   o = (A) super.clone();
  } catch (CloneNotSupportedException e) {
   e.printStackTrace();
  }
  return o;
 }
}

2.

復制代碼 代碼如下:

public class A implements Cloneable {
 public String name[];

 public A(){
  name=new String[2];
 }

 public Object clone() {
  A o = null;
  try {
   o = (A) super.clone();
  } catch (CloneNotSupportedException e) {
   e.printStackTrace();
  }
  return o;
 }
}

3.

復制代碼 代碼如下:

public class A implements Cloneable {   
     public String name[];   
     public Vector<B> claB;   

     public A(){   
         name=new String[2];   
         claB=new Vector<B>();   
     }   

     public Object clone() {   
         A o = null;   
         try {   
             o = (A) super.clone();   
         } catch (CloneNotSupportedException e) {   
             e.printStackTrace();   
         }   
         o.name=new String[2];//深度clone   
         o.claB=new Vector<B>();//將clone進行到底   
         for(int i=0;i<claB.size();i++){   
             B temp=(B)claB.get(i).clone();//當然Class B也要實現相應clone方法
             o.claB.add(temp);   
         }   
         return o;   
     }   
 }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 嘉义县| 汽车| 太原市| 宜昌市| 寿宁县| 宁德市| 称多县| 屏东市| 阿鲁科尔沁旗| 白玉县| 凤翔县| 托克逊县| 喀喇| 桃源县| 隆昌县| 三台县| 广宁县| 贵溪市| 大城县| 岢岚县| 波密县| 汝州市| 饶阳县| 寻乌县| 南郑县| 含山县| 林周县| 米泉市| 巴林右旗| 明星| 蛟河市| 浦江县| 分宜县| 阿城市| 全州县| 巨野县| 武义县| 屯昌县| 沈阳市| 无为县| 浦县|