4. 原型设计模式

来源:互联网 发布:手机淘宝刷単怎么操作 编辑:程序博客网 时间:2024/05/14 18:37
  • 当需要重复产生一个拥有大量属性的对象时, new通过构造函数创建的方式效率低下, 而通过对象.clone()这种复制二进制流的方法, 创建对象的效率大大提高. 这种创建对象的方法叫做原型设计模式
  • 浅拷贝 : 普通的clone()方法, 只能复制对象的常量属性; 对象的引用性属性不进行复制, 而是把新生对象的引用指向被克隆对象的属性
  • 要解决浅拷贝带来的引用性属性指向问题, 要重写clone(), 实现深拷贝, 如下 :

public class Thing implements Cloneable{    private ArrayList<String> arrL = new ArrayList<String>();    @Override    protected Thing clone() throws CloneNotSupportedException {        Thing thing =  (Thing)super.clone();        thing.arrL = (ArrayList<String>)this.arrL.clone();  // 深拷贝    }}
0 0
原创粉丝点击