原型模式

克隆分为深克隆和浅客隆
浅克隆:
    基本数值类型:复制对应的值。
    引用数据类型:复制引用地址(指像的地址相同)。
    调用Object的clone()方法返回的是浅克隆的结果。
深克隆:
    引用数据类型:复制内容,开辟新的存储空间,新的引用指向。
    如果实现:
        1:遍历内容并覆盖
        2:再次调用对象的clone方法。直到克隆到基本数据类型。
什么是原型模式:
    是一种对象创建型模式。
    采取复制原型对象的方法来创建对象的实例
    被创建的实例,具有与原型一样的数据。
为什么要用原型模式:
    有时候我们要创建很多对象,这个对象有一些属性是是相同的。那么我们可以使用原型模式,创建一个原型,然后根据这个原型克隆出基础属性相同的对象。
如何使用原型模式:
    步骤1:创建类,并且实现Cloneable接口。重写clone()方法。使用object的clone()方法克隆对象并返回。
    步骤2:调用:实体2 = 实体1.clone();    // 实体2是克隆出来的对象,属性和实体1相同。
    注意:当属性是引用类型时:需要深度克隆。
原文地址:https://www.cnblogs.com/Xmingzi/p/12601394.html