简单工厂模式

来源:互联网 发布:白自在和谢烟客知乎 编辑:程序博客网 时间:2024/05/16 05:13

简单工厂


接口

接口是一种特殊的抽象类,跟一般的抽象类相比,接口里的所有方法都是抽象方法,接口里的所有属性都是常量。也就是说接口里面只有方法定义没有任何方法实现。

接口的思想是”封装隔离”

简单工厂

示例代码:
https://github.com/GeniusVJR/DesignMode_Java/tree/master/SimpleFactory

客户端在调用的时候,不但知道了接口,同时还知道了具体的实现。接口的思想是”封装隔离”,而实现类Impl应该是被接口Api封装并同客户端隔离开来的,客户端不应该知道具体的实现类是Impl。

简单工厂的功能

不仅可以利用简单工厂来创建接口,也可以用简单工厂来创造抽象类,甚至是一个具体的实例。

静态工厂

没有创建工厂实例的必要,把简单工厂实现成一个工具类,直接使用静态方法。

万能工厂

一个简单哪工厂可以包含很多用来构造东西的方法,这些方法可以创建不同的接口、抽象类或者是类实例。

简单工厂的优缺点

  1. 优点
    • 帮助封装
    • 解耦
  2. 缺点
    • 可能增加客户端的复杂度
    • 不方便扩展子工厂

思考

简单工厂的本质是选择实现。

0 0
原创粉丝点击