七 设计模式之原型模式

原创 2011年01月20日 23:30:00

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

类图

优点

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

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

使用场景

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

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

注意事项

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

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

浅拷贝

 

深拷贝   代码如上

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

 

 

 

相关文章推荐

设计模式之原型模式

  • 2017年08月24日 13:41
  • 32KB
  • 下载

设计模式——原型模式

  • 2013年08月11日 16:47
  • 4KB
  • 下载

[设计模式整理笔记 七] 原型模式(ProtoType)

简单点理解原型模式的含义, 就是把一个对象复制出另一个对象, 但二个对象是独立的, 但原对象里面值在新对象里面也要存在, 一个是原对象, 一个是新对象, 注意原型模式里面, 必需是二个对象同时出现。 ...

C#设计模式--原型模式

  • 2017年02月21日 18:43
  • 28KB
  • 下载

JAVA设计模式七之 原型模式

JAVA设计模式七之七 原型模式 一:原型模式:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。         解释:就是从一个对象【克隆】再创建另外一个可定制的对象,而且不需知道...

设计模式的原型模式的例子

  • 2011年12月21日 11:00
  • 1KB
  • 下载

设计模式之原型模式

  • 2014年08月17日 14:57
  • 34KB
  • 下载

大话设计模式读书笔记(七) 原型模式

原型模式(Prototype): 书中通过小菜要去面试,需要打印简历。而引出了需求。 需要小菜写一份简历类,要求有姓名,年龄,性别。可以设置工作经历,并且需要三份简历。 未使用设计模式代码: pack...
  • xsyfl
  • xsyfl
  • 2017年04月08日 17:31
  • 82

C#设计模式--原型模式实例举例

  • 2017年02月22日 18:24
  • 28KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:七 设计模式之原型模式
举报原因:
原因补充:

(最多只允许输入30个字)