zoukankan      html  css  js  c++  java
  • 一张图搞定Java设计模式——工厂模式! 就问你要不要学!

    小编今天分享的内容是Java设计模式之工厂模式。

     

    收藏之前,务必点个赞,这对小编能否在头条继续给大家分享Java的知识很重要,谢谢!文末有投票,你想了解Java的哪一部分内容,请反馈给我。

    获取学习资源,更多源码,视频,知识点讲解!欢迎加入Java学习交流群616959444,我们一起学Java!

    工厂模式简介

    实例化对象,用工厂方法代替new操作。

    实现类、创建对象统一管理和控制。从而实现了创建者和调用者的分离。

    详细类分类:

    • 简单工厂模式:用来生产同一等级结构中的任意产品。(对于增加新的产品,需要修改已有代码)

    • 工厂方法模式:用来生产同一等级结构中的固定产品。(支持增加任意产品)

    • 抽象工厂模式:用来生产不同产品族的全部产品。(对于增加新的产品,无能为力;支持增加产品族)

    应用场景:

    - JDK 中Calendar 的getInstance方法。

    - JDBC中Connection对象的获取。

    - Hibernate中SessionFactory创建Session。

    - Spring 中IOC容器创建管理bean对象。

    - XML解析时的DocumentBuilderFactory创建解析器对象。

    - 反射中Class对象的newInstance()。


    简单工厂模式

    - 也叫做静态工厂模式,就是工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。

    - 对于增加新产品无能为力!不修改代码的话,是无法扩展的。

    获取学习资源,更多源码,视频,知识点讲解!欢迎加入Java学习交流群616959444,我们一起学Java!


    工厂方法模式(factorymethod)

    - 为了避免简单工厂模式的缺点,不完全满足OCP。

    - 工厂方法模式和简单工厂模式最大的不同在于,简单工厂模式只有一个(对于一个项目或者一个独立模块而言)工厂类,而工厂方法模式有一组实现了相同接口的工厂类。

    获取学习资源,更多源码,视频,知识点讲解!欢迎加入Java学习交流群616959444,我们一起学Java!


    简单工厂和工厂方法模式比较

    根据设计理论建议:工厂方法模式。但实际上,我们一般都用简单工厂模式。

  • 相关阅读:
    Flesch Reading Ease(模拟)
    实验一:词法分析设计
    java—容器学习笔记
    [转载]马士兵Java视频教程 —— 学习顺序
    Java的安装过程
    编程之美初赛第一场
    RCC 2014 Warmup (Div. 2)
    ural 1017. Staircases(dp)
    ural 1012. K-based Numbers. Version 2(大数dp)
    ural 1009. K-based Numbers(简单dp)
  • 原文地址:https://www.cnblogs.com/Autumn-R/p/7085751.html
Copyright © 2011-2022 走看看