
设计模式
基于Java语言的设计模式相关知识笔记
行百里者半九九
一名佛系程序员~
展开
-
设计模式(14):责任链模式及其在Java中的典型应用示例
责任链模式及其在Java中的典型应用实例1、什么是责任链模式2、责任链模式的特性3、责任链模式的优缺点及其应用场景4、责任链模式的应用示例5、责任链模式在Java中的典型应用示例1、什么是责任链模式责任链模式定义:为请求创建了一个接收者对象的链。这种模式给予请求的类型,对请求的发送者和接收者进行解耦。这种类型的设计模式属于行为型模式。在这种模式中,通常每个接收者都包含对另一个接收者的引用。如果一个对象不能处理请求,那么它会把相同的请求传给下一个接收者,以此类推。2、责任链模式原创 2020-08-19 13:31:33 · 2286 阅读 · 0 评论 -
设计模式(13):观察者模式及其在Java中的典型应用
观察者模式及其在Java中的典型应用示例1、什么是观察者模式2、观察者模式的特性3、观察者模式的优缺点及其应用场景4、观察者模式应用示例5、观察者模式在JDK和Spring源码中的典型应用示例1、什么是观察者模式观察者模式定义:定义对象之间的一对多依赖,让多个观察者对象同时监听某一主题对象,当主题对象发生变化时,它的所有依赖着都会受到通知并更新。观察者模式属于行为型模式。观察者模式的类图示例如下:如上图所示,主题SubJect需要有添加、删除观察者对象、发布更新消息通知给原创 2020-08-19 11:09:57 · 4608 阅读 · 0 评论 -
设计模式(12):模板方法模式及其应用示例
模板方法模式及其在Java中的典型应用示例1、什么是模板方法模式2、模板方法模式的特性3、模板方法模式的优缺点及其应用场景4、模板方法模式应用示例5、模板方法模式在Java中的典型应用示例1、什么是模板方法模式模板方法模式定义:定义一个操作的算法骨架,而将一些步骤延迟到子类中。TemplateMethod使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。在模板方法模式中,一个抽象类公开定义了执行它的方法的方式/模板,它的子类可以按需重写方法实现,但调用将以抽象类中定原创 2020-08-19 10:11:44 · 1358 阅读 · 0 评论 -
设计模式(11):策略模式及其典型应用
策略模式及其在Java中的典型应用1、什么是策略模式2、策略模式的特性3、策略模式的优缺点及应用场景4、策略模式的应用实例4.1、原始方法实现示例4.2 使用策略模式实现示例:5、策略模式在JDK/Spring框架中的经典应用1、什么是策略模式策略模式的定义:定义算法族,分别封装起来,让他们之间可以互相替换,此模式的变化独立于算法的使用者。在策略模式中,一个类的行为或其算法可以在运行时更改,这种类型的设计模式属于行为型模式。策略模式的类图示例如下:在策略模式中,我原创 2020-08-18 21:48:50 · 2388 阅读 · 0 评论 -
设计模式(10):装饰者模式及其应用
装饰者模式及其典型应用1、什么是装饰者模式2、装饰者模式的特性3、装饰者模式的优缺点及其应用场景4、装饰者模式应用示例5、装饰者模式在Java框架中的典型应用1、什么是装饰者模式装饰者模式定义:在不改变原有对象的基础上,将功能附加到对象上。装饰者模式允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供额外的功能。2、装饰者模式的特性原创 2020-08-18 20:18:50 · 809 阅读 · 1 评论 -
设计模式(9):适配器模式及其应用
适配器模式1、什么是适配器模式2、适配器模式的特性3、适配器模式的优缺点及应用场景4、适配器模式示例4.1、对象适配器模式示例4.2 类适配器模式示例5、适配器模式在Spring源码中的典型应用1、什么是适配器模式适配器模式定义:将一个类的接口转换成客户希望的另一个接口。Adapter模式使得原本由于接口不兼容不能在一起工作的那些类可以一起工作。适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立原创 2020-08-18 17:31:38 · 632 阅读 · 0 评论 -
设计模式(8):门面模式/外观模式
门面模式(外观模式)1、什么是门面模式(外观模式)?2、门面模式的特性?3、门面模式的优缺点及应用场景4、门面模式的程序示例5、门面模式在JDK中的典型应用1、什么是门面模式(外观模式)?门面模式定义:门面模式提供一个高层次的接口, 使得子系统更易于使用。门面模式要求一个子系统的外部与其内部的通信必须通过一个统一的对象进行。通俗的说, 就是设计一个类,专门用于对外服务的, 门面对象是外界访问子系统内部的唯一通道。门面模式属于结构型模式,它向现有的系统中添加一个接口,来隐藏系统的复原创 2020-08-18 15:26:22 · 617 阅读 · 0 评论 -
设计模式(7):享元模式及其在JDK中的典型应用
享元模式及其在JDK中的典型应用示例1、什么是享元模式2、享元模式的特性3、享元模式的优缺点及应用场景4、享元模式使用示例5、享元模式在JDK中的典型应用示例1、什么是享元模式享元模式定义:运用共享技术有效地支持大量细粒度的对象。享元模式主要用于减少创建对象的数量,以减少内存占用和提高性能。它提供了减少对象数量从而改善应用所需对象结构的方式。享元模式属于一定结构型模式。2、享元模式的特性(1)意图:运用共享技术有效地支持大量细粒度的对象。(2)主要解决:在有大原创 2020-08-18 11:26:09 · 547 阅读 · 1 评论 -
设计模式(6):代理模式及Java中的代理模式实现方式
代理模式1、什么是代理模式2、代理模式的特性3、代理模式的优缺点及其应用场景4、代理模式的三种实现方式4.1 静态代理4.2 动态代理4.2.1 JDK动态代理4.2.2 Cglib动态代理4.3 总结5、代理模式的典型应用示例1、什么是代理模式代理模式:给某一个对象提供一个代理,并由代理对象控制对原对象的访问引用。它是一种对象结构型模式。在代理模式中,一个类代表另一个类的功能,我们创建具有现有对象的对象,以便向外界提供功能接口。生活中就有代理模式的例子.原创 2020-08-04 16:29:19 · 454 阅读 · 0 评论 -
设计模式(5):原型模式及其在Java中的应用
1、什么是原型模式?原型模式(Prototype Pattern)是一种用于创建重复的对象,同时又能保证性能的设计模式。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。或者说:原型模式指原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。2、原型模式的特性(1)意图:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。(2)主要解决:在运行期建立和删除原型。(3)何时使用:1、当一个系统应该独立于它的产品创建,构成和表示时。2、当要实原创 2020-08-04 13:08:03 · 668 阅读 · 0 评论 -
设计模式(4):建造者模式及其在Java中的应用实例
1、什么是建造者模式?(1)模式定义:建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。一个 Builder 类会一步一步构造最终的对象。该 Builder 类是独立于其他对象的。或者说:建造者模式将一个复杂对象的创建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式示例类图2、建造者模式特性(1)意图:将一个复杂的构建与其表示相分离,使得同样的构建过程可以原创 2020-08-01 21:03:33 · 620 阅读 · 0 评论 -
设计模式(3):抽象工厂模式及其在Java框架中的应用示例
抽象工厂模式1、什么是抽象工厂模式?2、抽象工厂模式特性?3、抽象工厂模式的优缺点及应用场景4、抽象工厂模式实现示例5、JDK中抽象工厂模式的典型应用示例1、什么是抽象工厂模式?抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在抽象工厂模式中,接口是负责创建一个相关对象的工厂,不需要显式指定它们的类。每个生成的工厂都能按照工厂模式提供对原创 2020-08-01 13:20:08 · 792 阅读 · 0 评论 -
设计模式(2):简单工厂模式及工厂方法模式
1、什么是工厂模式?工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。2、工厂模式特性(1)意图:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。(2)主要解决:主要解决接口选择的问题。(3)何时使用:我们明确地计划不同条件下创建不同实例时。原创 2020-08-01 10:58:21 · 364 阅读 · 0 评论 -
设计模式(1):单例模式及其几种实现方式
单例模式1、单例模式简述2、特点介绍3、单例模式的几种实现方式3.1 懒汉模式3.2 饿汉模式3.3、静态内部类实现模式3.4 前述三个方法实现存在的问题3.5、枚举模式实现3.6 Java JDK中单例模式的应用1、单例模式简述单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提原创 2020-07-31 11:16:27 · 2133 阅读 · 0 评论