首页
学习
活动
专区
工具
TVP
发布

设计模式之原型模式

设计模式之原型模式

原型模式(Prototype Pattern):Specify the kinds of objects to create using a prototypical instance, and create new objects by copying this prototype.用原型实例去创建指定对象的种类,并且通过拷贝这些原型创建新的实例。

通用的类图如下:

通用的类图

这个原型模式的核心是clone方法,在Java中通过clone实现。clone方法的定义在Object对象上,我们重写这个方法,并且通过实现接口Cloneable来标志类是可以复制的。

通用代码

原型模式的优缺点:

1、性能好,在内存中拷贝,比直接new一个对象节省资源;

2、缺点,构造方法不会被执行,减少了约束。

使用场景:创建资源比较耗时的情况,一个对象有多个修改者的情况。

原型模式有几个需要注意的地方

1、clone对象,构造方法不会被执行

2、默认是拷贝对象的本身属性,不会拷贝对象里面的引用和数组,也就是所说的浅拷贝

3、如果要实现深拷贝,我们要在clone方法对引用和数组单独拷贝。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200403A0UE1900?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券