美文网首页
11、设计模式

11、设计模式

作者: 浮生若梦OvO | 来源:发表于2019-06-21 10:21 被阅读0次

一、设计模式概念

我们项目中有很多相同的东西,我们把这些相同的东西抽取出来符合某种规则,我们就称他为设计模式。

二、工厂设计模式

  • 简单工厂设计模式

  • 如果有写完一个类不想让其他人创建这个类的对象怎么办?
    第一种方式把构造方法私有化
    第二种方式把类定义为抽象类

  • 面向对象的设计原则?
    对修改关闭,对扩展开放.

三、工厂方法模式

  • 简单工厂模式的弊端
    如果再有一个新的动物的话,需要修改代码,不符合开闭原则,不好.

  • 工厂方法模式的好处
    如果再有一个新的动物,只需要在创建一个新的动物工厂类,以及动物描述类就可以了
    不需要修改代码.

  • 工厂模式中心思想
    原来创建对象的步骤在主方法中,用方法模式的话就是把创建对象的步骤放在了其他类中.

四、单例设计模式(饿汉式)

  • 怎么样去写一个单例设计模式?
    前提条件:类在内存中只能存在一个对象

  • 怎么样写一个单例设计模式(饿汉式)
    a、把构造方法私有化(为了不让外界随意创建对象)
    b、在本类中创建一个静态并且私有的本类对象
    c、写一个公共并且静态的方法,返回B创建的对象.

五、单例设计模式(懒汉式)

  • 单例设计模式分类、以及何时创建对象。
    饿汉式:在类一加载就创建对象
    懒汉式:在使用它的时候才去创建对象
    注意:懒汉式如果实在多线程程序中会出现线程安全问题,要加锁

  • 如何写一个单例设计模式(懒汉)
    a 在类中把构造方法私有化
    b 声明一个本类类型的成员变量,赋值为null(私有和静态修饰)
    c 创建一个公共并且静态的方法,在方法中判断,如果对象为null,则创建对象,如果不为null则直接返回对象.并加锁.

六、模拟手机发展(用装饰模式)

  • 什么是装饰模式?
    对类原有的功能进行了包装扩充
  • 应用步骤:
    第一步:找到被装饰的类Phone.
    第二步:创建一个实体类PhoneImpl,去实现Phone这个接口.
    第三步:创建一个装饰类,去实现Phone这个接口,调用实现就可以了.

七、模板方法模式

  • 模板方法模式的最优体现是抽象类
  • 我们可以把不变的定义为实体方法
  • 把变化的定义为抽象方法.

相关文章

  • 设计模式

    设计模式 2020-07-15 11:46:26 星期三 软件设计模式(Design pattern),又称设计模...

  • 11.6设计模式-组合模式-详解

    设计模式-组合模式 组合模式详解 组合模式在android中的实际运用11_1-11-7[01_45_32][20...

  • 设计模式

    总结经验 设计模式分类: 创建型模式(5种): 结构型模式(7种): 行为型模式(11种):

  • 11、设计模式

    一、设计模式概念 我们项目中有很多相同的东西,我们把这些相同的东西抽取出来符合某种规则,我们就称他为设计模式。 二...

  • 行为模式10-行为模式总结

    行为模式10-行为模式总结 行为模式总共有11个设计模式: 观察者模式(Observer) 中介者模式(Media...

  • 设计模式(4) 行为型模式

    引用 图说设计模式 摘要 行为型模式的简介 正文 一 简介 二 11种行为型模式 (1) 职责链模式 chain ...

  • 设计模式三大分类

    1、设计模式分类 5种创建型模式:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 11种结构型模式:...

  • 11、设计模式----状态模式

    状态模式,当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。 状态模式主要解决的是当控制一个...

  • 设计模式(11) : 组合模式

    定义: 将对象组合成树型结构以表示"部分-整体"的层次结构. 组合模式使客户端对单个对象和组合对象保持一致的方式处...

  • 设计模式之工厂模式

    title: 设计模式之工厂模式date: 2020-11-26 22:37:00tags: java GOF 设...

网友评论

      本文标题:11、设计模式

      本文链接:https://www.haomeiwen.com/subject/rugjqctx.html