工厂模式常见的三种:
- 简单工厂模式
- 工厂方法模式
- 抽象工厂模式
工厂模式优点:
- 代码清晰,有效的封装变化
- 对调用者屏蔽具体的产品类
- 降低耦合度
工厂方法模式:
四要素:
- 工程接口,核心。
- 工程实现
- 产品接口,规范
- 产品实现
适用场景:
- 生成复杂对象的地方
- 解耦
- 需要扩展性的时候
例子:
如果我们要new一个车子的时候,还要new轮子,发动机啥的,很麻烦,可以在工厂方法模式中实现
类图
代码示例
interface IProduct { public void productMethod();
} class Product implements IProduct { public void productMethod() { System.out.println(“产品”); }
} interface IFactory { public IProduct createProduct();
} class Factory implements IFactory { public IProduct createProduct() { return new Product(); }
} public class Client { public static void main(String[] args) { IFactory factory = new Factory(); IProduct prodect = factory.createProduct(); prodect.productMethod(); }
}
学习资料:
- 卡奴达摩的专栏