学习的工厂模式和策略模式

  最近对接银行系统,发现不同银行的报文都有很大区别,而代码中取得报文数据后操作基本上是相同的,于是听说了策略模式的说法,学习后总结一下分享出来。

  一、工厂模式

  1. 简单工厂模式(Simple Factory)

    它由三种角色组成:
    工厂类角色:这是本模式的核心,含有一定的商业逻辑和判断逻辑,根据逻辑不同,产生具体的工厂产品。
    抽象产品角色:它一般是具体产品继承的父类或者实现的接口。由接口或者抽象类来实现。
    具体产品角色:工厂类所创建的对象就是此角色的实例。
  2. 工厂方法模式(Factory Method)

    抽象工厂角色: 这是工厂方法模式的核心,它与应用程序无关。是具体工厂角色必须实现的接口或者必须继承的父类。在java中它由抽象类或者接口来实现。
    具体工厂角色:它含有和具体业务逻辑有关的代码。由应用程序调用以创建对应的具体产品的对象。在java中它由具体的类来实现。
    抽象产品角色:它是具体产品继承的父类或者是实现的接口。在java中一般有抽象类或者接口来实现。
    具体产品角色:具体工厂角色所创建的对象就是此角色的实例。在java中由具体的类来实现。

    具体就是将工厂下属性动作细分,比如开车,单独列出一个Drive的抽象类,然后用各种其他类型的车继承这个类。(来源https://www.cnblogs.com/zhangchenliang/p/3700820.html)


3. 抽象工厂模式(Abstract Factory)

posted @ 2018-07-20 20:50  sachima031  阅读(108)  评论(0编辑  收藏  举报