原型模式

来源:互联网 发布:免费网络电视 编辑:程序博客网 时间:2024/06/01 18:27

目的就是实现深复制

//实现Cloneable接口,不然调用clone()时抛出CloneNotSupportExceptionpublic class Person implements Cloneable {    public String name;    public Person(String name) {        this.name = name;    }    @Override    public Person clone() {        Person person = null;        try{            person = (Person)super.clone();        }catch(CloneNotSupportedException e) {            e.printStackTrace();        }        return person;    }}
        Person yellow = new Person("小黄");        Person oldJ = yellow.clone();        oldJ.name="老将";        Log.d("meee",getClass()+":\n"+"yellow:"+yellow.name);        Log.d("meee",getClass()+":\n"+"oldJ:"+oldJ.name);

也可以自己创建ICloneable接口

public interface ICloneable {    Object clone();}//实现类调用构造器实现复制过程
原创粉丝点击