设计模式之工厂模式

1、简单工厂模式(静态工厂模式,常用):由工厂类来创建对象

直接上代码-->核心代码:

 

2、工厂方法模式:子类工厂去创建对象

 直接上代码-->核心代码:

 

3、抽象工厂模式(推荐使用,针对多个接口):

1) 定义了一个interface用于创建相关或有依赖关系的对象簇,而无 指明具体的类                  2) 可以将简单工厂模式和工厂方法模式进行整合。                                                                  3) 从设计层面看,抽象工厂模式就是对简单工厂模式的改进(或者称为进一步的抽象)。        4) 将工厂抽象成两层,AbsFactory(抽象工厂) 和 具体实现的工厂子类。

程序员可以 根据创建对象类型使用对应的工厂子类。这样将单个的简单工厂类变成了工厂簇, 更利于代码的维护和扩展。

  直接上代码-->核心代码:

 

 工厂模式总结:

1) 工厂模式的意义:

       将实例化对象的代码提取出来,放到一个类中统一管理和维护,达到和主项目的 依赖关系的解耦。从而提高项目的扩展和维护性。                                               

2) 三种工厂模式:

        简单工厂模式(违反ocp开闭原则);

        工厂方法模式(符合ocp,但类增多了);

        抽象工厂模式;

3) 设计模式的依赖抽象原则:

        创建对象实例时,不要直接 new 类, 而是把这个new 类的动作放在一个工厂的方法 中,并返回。有的书上说,变量不要直接持有具体类的引用。  不要让类继承具体类,而是继承抽象类或者是实现interface(接口) 。 不要覆盖基类中已经实现的方法;

4)适用场景:

        ①JDK的Calendar的getInstance()方法;

        ②JDBC中回去Connection()方法;

        ③spring IOC创建bean对象,然后对bean进行管理;

        ④反射的newInstance()方法;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值