type
status
date
slug
summary
tags
category
icon
password

一、定义

notion image
原型模式是用于创建复杂的对象,保证了性能,同时能复制出对象私有的属性,它提供了一种创建对象的绝佳方式(clone

二、示例:

模拟场景: 例如:1、细胞的分裂过程,有丝分裂会产生一对完全相同的细胞。 原始细胞就是一个原型, 它在复制体的生成过程中起到了推动作用。
例如:2、每个⼈都经历过考试,从纸制版到上机答题,⼤⼤⼩⼩也有⼏百场。⽽以前坐在教室⾥答题身边的⼈都是⼀套试卷,考试的时候还能偷摸或者别⼈给发信息抄⼀抄答案。
但从⼀部分可以上机考试的内容开始,在保证⼤家的公平性⼀样的题⽬下,开始出现试题混排更有做的好的答案选项也混排。这样⼤⼤的增加了抄的成本,也更好的做到了考试的公平性。

传统编码方式

代码会变的非常的冗长,可扩展差

原型模式(clone)

实现了clone方法,复制对象里面的所有内容。然后重新定义规则:QuestionBank
总结: 以上的实际场景模拟了原型模式在开发中᯿构的作⽤,但是原型模式的使⽤频率确实不是很⾼。如 果有⼀些特殊场景需要使⽤到,也可以按照此设计模式进⾏优化。
另外原型设计模式的优点包括;便于通过克隆⽅式创建复杂对象、也可以避免重复做初始化操作、 不需要与类中所属的其他类耦合等。但也有⼀些缺点如果对象中包括了循环引⽤的克隆,以及类中 深度使⽤对象的克隆,都会使此模式变得异常麻烦
 
JAVA【设计模式】建造者模式JAVA【设计模式】适配器模式
IT小舟
IT小舟
微信公众号:IT小舟
公告
type
status
date
slug
summary
tags
category
icon
password
notion image
你好,我是小舟。 欢迎来到我的博客,我喜欢运动、阅读、音乐和写作。如果有什么想要交流的,可以加我微信:upcodezhou。再次感谢你的光临!
notion image