设计模式

  • 设计模式之 观察者模式

    又叫发布-订阅者模式,或者模型-视图模式。 在被观察者的状态发生变化时,系统基于事件驱动理论将其状态通知到订阅其状态的观察者对象中,以完成状态的修改和事件传播。   (1)定义抽象主题 public abstract class Subject{ protected List<Observer> observers = new ArrayList…

    设计模式 2023年4月16日
    00
  • 设计模式之 模板方法模式

    模板方法模式定义了一个算法框架,并通过继承的方式将算法的实现延迟到子类中,使得子类可以在不改变算法框架及流程的前提下重新定义改算法在某些环节的实现。   (1)定义模板类 public abstract class AbstractTemplate{ private final static Log logger = LogFactory.getLog(th…

    设计模式 2023年4月16日
    00
  • 设计模式之 模板方法模式

    模板方法模式定义了一个算法框架,并通过继承的方式将算法的实现延迟到子类中,使得子类可以在不改变算法框架及流程的前提下重新定义改算法在某些环节的实现。   (1)定义模板类 public abstract class AbstractTemplate{ private final static Log logger = LogFactory.getLog(th…

    设计模式 2023年4月16日
    00
  • GOF23设计模式之装饰模式(decorator)

    一、装饰模式概述   (1)动态的为一个对象增加新的功能。   (2)装饰模式是一种用于代替继承的技术,无需通过继承增加子类就能扩展对象的新功能。       使用对象的关联关系代替继承关系,更加灵活,同时避免类型体系的快速膨胀。 二、装饰模式实现细节   (1)Componen 抽象构件角色:       真实对象和装饰对象有相同的接口。这样,客户端就能够…

    设计模式 2023年4月16日
    00
  • GOF23设计模式之建造者模式(builder)

    一、建造者模式概述   建造者模式的本质:     1.分离了对象子组件的单独构造(由Builder负责)和装配(由Director负责)。从而可以构造出复杂的对象。这个模式适用于:某个对象的过程复杂的情况下使用。     2.由于实现了构建和装配的解耦。不同的构建器,相同的装配,也可以做出不同的对象;相同的构建器,不同的装配顺序也可以做出不同的对象。也就是…

    设计模式 2023年4月16日
    00
  • GOF23设计模式之享元模式(flyweight)

    一、享元模式概述   内存属于稀缺资源,不要随便浪费。如果有很多个完全相同或相似的对象,可以通过享元模式,节省内存。   享元模式核心:     (1)享元模式可以共享的、方式高效的支持大量细粒度对象的重用;      (2)享元对象能做到共享的关键是区分了内部状态和外部状态:         ① 内部状态:可以共享,不会随环境变化而改变         ②…

    设计模式 2023年4月16日
    00
  • GOF23设计模式之工厂模式(factory)

    一、工厂模式概述   实现了创建者和调用者的分离   (1)分类     ①简单工厂模式       虽然某种程度不符合设计原则,但实际使用最多。     ②工厂方法模式       不修改已有类的前提下,通过增加新的工厂类实现扩展。     ③抽象工厂模式       不可以增加产品,可以增加产品族。 二、不使用工厂模式时   1.创建一个汽车的接口 1 …

    设计模式 2023年4月16日
    00
  • GOF23设计模式之原型模式(prototype)

    一、原型模式概述   1.通过new产生一个对象需要非常繁琐的数据准备和访问权限,则可以使用原型模式。   2.就是java中的克隆技术,以某个对象为原型,复制出新的对象,显然,新的对象具备原型对象的特点。   3.优势:效率高(直接克隆,避免了重新执行构造函数的过程)。   4.克隆类似于new,但是不同于new。     new创建出来的对象属性采用默认…

    设计模式 2023年4月16日
    00
  • GOF23设计模式之适配器模式(Adapter)

    一、适配器模式概述   将一个类的接口转换成客户可用的另外一个接口。   将原本不兼容不能在一起工作的类添加适配处理类,使其可以在一起工作。 二、适配器模式场景   要想只有USB接口的电脑想使用PS/2接口的键盘,必须使用PS/2转USB的适配器。 三、适配器模式示例   (1)定义USB接口 1 /** 2 * 客户所期待的接口(相当于USB接口) 3 …

    设计模式 2023年4月16日
    00
  • 设计模式(0)—— 概述

    设计模式(Design Pattern),是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。 使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。 1、设计模式和框架   可复用面向对象软件系统…

    设计模式 2023年4月16日
    00
合作推广
合作推广
分享本页
返回顶部