设计模式 —— 工厂模式
设计模式 —— 工厂模式
目录
- 概述
- 实现
- 优缺点
概述
工厂模式(Factory Pattern)是创造型设计模式的一种,它提供了一种创建对象的最佳方式:不对对象暴露创建逻辑,而是通过共同的接口指向新创建的对象
定义:创建对应对象的工厂类,将创建对象的工作交给工厂,提供信息使工厂生产复杂对象
使用场所:任何需要生成复杂对象的地方
实现
(工厂方法模式:建立统一的工厂接口,具体类的工厂实现公共接口)
// 实现一个计算机基本的加减乘除运算
// 工厂接口
public interface IFactory {
Operation CreateOption();
}
// 加法类工厂
public class AddFactory implements IFctory {
public Opetation CreateOption() {
return new OperationAdd();
}
}
// 减法类工厂
public class SubFactory implements IFctory {
public Opetation CreateOption() {
return new OperationSub();
}
}
// 乘法类工厂
public class MulFactory implements IFctory {
public Opetation CreateOption() {
return new OperationMul();
}
}
// 除法类工厂
public class DivFactory implements IFctory {
public Opetation CreateOption() {
return new OperationDiv();
}
}
优缺点
优点:符合开闭原则,客户端可以不需要知道具体产品的类名,只需要知道对应工厂,一个类的创建是通过其子类的指定生成,子类对象会覆盖父类对象
缺点:代码更多了,要管理的对象也就更多了
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 IT蛋的个人博客!