七 设计模式之原型模式

定义    用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象

类图

优点

1.       性能优良  原型模式是在内存二进制流的拷贝,要比直接new一个对象性能好很多,特别是要在一个循环内产生大量对象时

2.       逃避构造函数的约束  直接在内存中拷贝,构造函数不会执行

使用场景

1.       资源优化场景           类初始化需要消耗非常多的资源时

2.       性能和安全要求的场景  

注意事项

1.       clone方法产生新对象时,构造函数不会被执行

1.       浅拷贝/深拷贝 浅拷贝指使用clone方法时只拷贝本对象,其对象内部的数组,引用对象(String 除外)都不拷贝,还是指向原生对象的内部元素地址。深拷贝之后,两个对象不再有任何瓜葛,对其中任何一个修改都将不会影响另一个

浅拷贝

 

深拷贝   代码如上

3.       Clonefinal  要使用clone()方法,则类的成员变量不能增加final关键字

 

 

 

阅读更多
个人分类: 设计模式
上一篇六 设计模式之代理模式(或称委托模式)
下一篇八 设计模式之中介者模式
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭