码迷,mamicode.com
首页 > 其他好文 > 详细

抽象工厂模式和原型模式之间的区别?

时间:2020-07-04 13:38:06      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:切换   ott   font   效率   对象   另一个   拷贝   设计者   ice   

抽象工厂模式:通常由工厂方法模式来实现。但一个工厂中往往含有多个工厂方 

法生成一系列的产品。这个模式强调的是客户代码一次保证只使用一个系列的产 

品。当要切换为另一个系列的产品,换一个工厂类即可。

原型模式:工厂方法的最大缺点就是,对应一个继承体系的产品类,要有一个同 

样复杂的工厂类的继承体系。我们可以把工厂类中的工厂方法放到产品类自身之 

中吗?如果这样的话,就可以将两个继承体系为一个。这也就是原型模式的思想,

原型模式中的工厂方法为 clone,它会返回一个拷贝(可以是浅拷贝,也可以是深 

拷贝,由设计者决定)。为了保证用户代码中到时可以通过指针调用 clone 来动 

态绑定地生成所需的具体的类。这些原型对象必须事先构造好。

原型模式想对工厂方法模式的另一个好处是,拷贝的效率一般对构造的效率要高。

抽象工厂模式和原型模式之间的区别?

标签:切换   ott   font   效率   对象   另一个   拷贝   设计者   ice   

原文地址:https://www.cnblogs.com/programb/p/13019400.html

踩
(0)
赞
(0)
   
举报
评论 一句话评论(0)
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!