工厂设计模式
来源:互联网 发布:阿里云api接口 编辑:程序博客网 时间:2024/05/29 17:18
工厂设计模式
- 定义 工厂设计模式定义了一个创建对象的接口,但由于子类决定要实例化的类是哪一个,工厂方法让类把实例化推迟到子类。
好处:尽管只有一个具体创建者,可以将产品的实现从使用中解耦。
可以定义一个默认方法产生某些具体的类,及时创建者没有子类,依然可以创建产品
将创建对象的代码集中在一个对象或方法中,可以避免代码的重复,方便日后维护。
依赖倒置原则 Dependency Inversion Principle
解释 要依赖抽象而不依赖具体类。说明白了,不能让高层组件依赖底层组件,而且,不管高低层组件,都应该依赖于抽象。
原则
变量不可以持有具体类的引用
不要让类派生自具体类
不要覆盖基类中已实现的方法
通过抽象工厂提供的接口,可以创建自己的方法,从实际工厂中解耦,通过传入不同的工厂制作出不同的产品。
- 抽象工厂模式提供一个接口,用于创建相关或依赖对象的家族,并不需要明确的指定具体类。
工厂方法与抽象工厂
在程序中将实现解耦,工厂方法使用继承,抽象工厂使用组合。工厂方法是用来创建对象,由子类来决定具体类型
总而言之,都能讲对象的创建封装起来,使应用程序解耦,降低其对特定实现的依赖,
总结
- 工厂方法使用继承,把对象的创建委托给子类,子类实现工厂方法来创建对象。
- 抽象工厂使用对象组合,对象的创建被实现在工厂接口所暴露出来的方法中。
- 所有的工厂模式都是通过减少程序和具体类之间的依赖进行松耦合
- 工厂方法允许类的实例化延迟到子类中进行
阅读全文
0 0
- 设计模式--工厂设计
- 设计模式------工厂模式
- 设计模式------工厂模式
- 设计模式 [ 工厂模式 ]
- 设计模式--工厂模式
- 设计模式-工厂模式
- 设计模式--工厂模式
- 设计模式 工厂模式
- 设计模式-工厂模式
- 设计模式 -- 工厂模式
- 设计模式-工厂模式
- 设计模式----工厂模式
- 设计模式---工厂模式
- 设计模式-工厂模式
- 设计模式--工厂模式
- 设计模式---工厂模式
- 设计模式-工厂模式
- 设计模式--工厂模式
- C#中的委托、lamba与Func Action的使用
- C语言IO操作
- Java的主要就业方向
- 自定义View——设计规则图形及其属性
- 将一个类(或Fragment)中的数据传递给另一个activity(或Fragment)
- 工厂设计模式
- 基于TensorFlow微调AlexNet
- LCA 最近公共祖先
- MacBook Pro无法开机的解法办法
- java学习方法----过程篇
- sas统计分析学习笔记(二)
- Asia Hong Kong Regional Contest 2016
- linux man 命令查询系统函数
- SpringBoot 打包成war包,部署到tomcat