第一次好好的看设计模式,可能有不对的地方,大佬们可以下面指出,感谢!
----------- 分割线 ----------
简历复印——原型模式
简历复印,一个复制过程,原型模式即一个复制过程。
UML图:
Prototype类:
实现类:
程序调用:
这个位置克隆的是copyOne,可以看出每次都是不同的copyOne,实现了原型复制;
克隆copyTwo:
哪个实现类克隆,就是克隆哪个对象,简单原型模式这样就实现了。
升级版——Cloneable :
程序调用:
这个时候有个问题,如果我的简历对象里面还包含了一个对象呢,也能复制过去吗?原型模式中的浅复制和深复制:浅复制——只复制对象本身属性,不复制锁包含对象;深复制——不仅复制了属性,而且复制了里面所包含对象(当然需要自己实现);先到这了,饿了,吃饭了,回头补充深复制和浅复制。
原文:https://www.cnblogs.com/ghsy/p/11101961.html