原型模式及实现

新知榜官方账号

2023-10-10 19:44:29

原型模式及实现

原型模式是创建型模式中的最后一个,它主要用于对象创建成本比较大的情况。

UML类图链接

本文代码链接

1. 定义

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

对于原型模式主要关注Clone函数,Clone可实现深拷贝或者浅拷贝。至于是否需要有Prototype接口类,看具体情况,如果需要用到里氏替换,就创建接口类,如果没有用处,就无需创建。

2. 使用场景

原型模式主要用于创建对象成本较大的情况。如果创建对象极其方便,就不要用原型模式了,否则有过度设计、得不偿失之嫌。一般使用在建立对象特别耗费资源,如需要从DB、硬盘等获取大量数据或者需要经过大量计算等;又或者建立的对象存储的内容是可以被复用,完全重新建一个新的更加耗时。使用原型模式,需要了解深拷贝和浅拷贝。

3. 代码实现

以下为原型模式的代码实现,包括简历类的基本信息和深拷贝实现。

...

4. 重写文章

原型模式是一种创建型模式,主要用于对象创建成本比较大的情况。如果创建对象极其方便,就不要用原型模式了,否则有过度设计、得不偿失之嫌。一般使用在建立对象特别耗费资源,如需要从DB、硬盘等获取大量数据或者需要经过大量计算等;又或者建立的对象存储的内容是可以被复用,完全重新建一个新的更加耗时。

使用原型模式,需要了解深拷贝和浅拷贝。浅拷贝是指被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用都仍然指向原来的对象。深拷贝把引用对象的变量指向复制过的新对象,而不是原有的被引用的对象。

原型模式就是利用对已有对象进行复制的方式,来创建新对象,以达到节省创建时间的目的。拷贝可以选择深拷贝或者浅拷贝。

5. 结论

原型模式是一种创建型模式,主要用于对象创建成本比较大的情况。使用原型模式,需要了解深拷贝和浅拷贝。深拷贝把引用对象的变量指向复制过的新对象,而不是原有的被引用的对象。

本页网址:https://www.xinzhibang.net/article_detail-16232.html

寻求报道,请 点击这里 微信扫码咨询

关键词

原型模式 深拷贝 浅拷贝

分享至微信: 微信扫码阅读

相关工具

相关文章

相关快讯