对象的克隆技术

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());
        
    }

}

 

posted @ 2017-06-05 14:06  初学者,方圆几里  阅读(117)  评论(0编辑  收藏  举报