package duixiangkelong.cn; /* * 对象的克隆技术 * protected Object clone() 创建并返回此对象的一个副本。 对象克隆必须要的两点: 1、必须要实现Cloneable接口 2、子类必须要重写clone() */ //创建一个类,必须要实现Cloneable接口 class Person implements 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; } //重写 clone() 方法,并扩大访问权限,以便外部调用 public Object clone()throws CloneNotSupportedException { //具体的操作由父类完成 return super.clone(); } } public class KeLongDemo { public static void main(String[] args) throws CloneNotSupportedException { //new 一个person 实例化对象出来 Person p1 = new Person("张三"); //克隆一个 对象 p2(并没有 new 出来 哦) Person p2 = (Person)p1.clone(); p2.setName("李四"); System.out.println(p1.getName()); System.out.println(p2.getName()); } }