您的位置:首页 > 其它

对象克隆技术

2012-07-14 22:20 260 查看
class Person implements Cloneable {
//对象的克隆---clone() 创建并返回此对象的一个副本。必须实现Cloneable接口才能实现克隆
//如果该类的对象被克隆,就必须在该类明确的重写此方法,但是此方法不能直接调用,看实例

private String name;

public Person(String name) {
super();
this.name = name;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String toString() {//对象打印时的调用
return "姓名:" + this.name;
}

public Object clone() throws CloneNotSupportedException {
return super.clone(); // 具体的克隆操作由父类完成
}

}
public class CloneDemo {

/**
* 对象的克隆---对象的复制,完整的一个复制对象
*/
public static void main(String[] args) {
Person p1 = new Person("张三");
Person p2 = null;
try {
p2 = (Person) p1.clone();//向下转型----P2没有被实例化
} catch (CloneNotSupportedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
p2.setName("李四");
System.out.println("原始对象:" + p1);
System.out.println("克隆之后的对象:" + p2);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  对象克隆技术