![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
23种设计模式
文章平均质量分 94
库里不会投三分
会持续更新Java初阶到进阶实战的知识
展开
-
第二十一章行为性模式—访问者模式
行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象无法单独完成的任务,它涉及算法与对象间职责的分配。行为型模式分为类行为模式和对象行为模式:类行为模式:采用继承机制来在类间分派行为对象行为模式:采用组合或聚合在对象间分配行为由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象行为模式比类行为模式具有更大的灵活性。以上 11 种行为型模式,除了和是类行为型模式,其他的全部属于对象行为型模式。原创 2023-05-31 15:44:08 · 985 阅读 · 0 评论 -
第十九章行为型模式—中介者模式
我们可以看出,中介者模式和代理模式比较相似,他俩夸大的是通信,桥接模式夸大的时候拥有属性;中介者模式是多对多通信,代理是一对一通信,桥接是一对多;代理是通信只能从一方到另外一方,中介者是双向都可以通信。原创 2023-05-31 15:43:04 · 1200 阅读 · 0 评论 -
第二十四章手写Spring框架
Spring 是面向 Bean 的编程 (BOP,Bean Oriented Programming),Bean 在 Spring 中处于核心地位。Spring IoC 容器通过配置文件或者注解的方式来管理 Bean 对象之间的依赖关系。Bean 对于 Spring 的意义就像 Object 对于 OOP 的意义一样。为什么 Bean 如此重要呢?Spring 将 Bean 对象交由一个叫 IOC 的容器进行管理。原创 2023-06-01 15:53:35 · 557 阅读 · 0 评论 -
第二十二章行为型模式—备忘录模式
行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象无法单独完成的任务,它涉及算法与对象间职责的分配。行为型模式分为类行为模式和对象行为模式:类行为模式:采用继承机制来在类间分派行为对象行为模式:采用组合或聚合在对象间分配行为由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象行为模式比类行为模式具有更大的灵活性。以上 11 种行为型模式,除了和是类行为型模式,其他的全部属于对象行为型模式。原创 2023-06-02 11:58:34 · 237 阅读 · 0 评论 -
第二十章行为性模式—迭代器模式
行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象无法单独完成的任务,它涉及算法与对象间职责的分配。行为型模式分为类行为模式和对象行为模式:类行为模式:采用继承机制来在类间分派行为对象行为模式:采用组合或聚合在对象间分配行为由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象行为模式比类行为模式具有更大的灵活性。以上 11 种行为型模式,除了和是类行为型模式,其他的全部属于对象行为型模式。原创 2023-05-31 15:42:12 · 728 阅读 · 0 评论 -
第十八章行为性模式—观察者模式
行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象无法单独完成的任务,它涉及算法与对象间职责的分配。行为型模式分为类行为模式和对象行为模式:类行为模式:采用继承机制来在类间分派行为对象行为模式:采用组合或聚合在对象间分配行为由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象行为模式比类行为模式具有更大的灵活性。以上 11 种行为型模式,除了和是类行为型模式,其他的全部属于对象行为型模式。原创 2023-05-31 15:35:15 · 410 阅读 · 0 评论 -
第十七章行为性模式—状态模式
一些常见的策略模式的例子是封装算法,例如排序算法,加密算法或者压缩算法。如果你看到你的代码需要使用不同类型的相关算法,那么考虑使用策略模式吧。而识别何时使用状态模式是很简单的:如果你需要管理状态和状态转移,但不想使用大量嵌套的条件语句,那么就是它了。状态还涉及到状态切换的过程,这个过程是可以由状态内部决定的,不需要外界干涉,这一点就和策略模式不一样了,策略主要变化因素受外界影响的。超过三层的if-else语句的逻辑判断代码可以使用卫语句,策略模式,状态模式。原创 2023-05-31 15:32:36 · 643 阅读 · 0 评论 -
第十六章行为性模式—职责链模式
行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象无法单独完成的任务,它涉及算法与对象间职责的分配。行为型模式分为类行为模式和对象行为模式:类行为模式:采用继承机制来在类间分派行为对象行为模式:采用组合或聚合在对象间分配行为由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象行为模式比类行为模式具有更大的灵活性。以上 11 种行为型模式,除了和是类行为型模式,其他的全部属于对象行为型模式。原创 2023-05-31 15:30:51 · 538 阅读 · 0 评论 -
第十五章行为性模式—命令模式
和。原创 2023-05-31 15:29:56 · 509 阅读 · 0 评论 -
第十四章行为性模式—策略模式
行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象无法单独完成的任务,它涉及算法与对象间职责的分配。行为型模式分为类行为模式和对象行为模式:类行为模式:采用继承机制来在类间分派行为对象行为模式:采用组合或聚合在对象间分配行为由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象行为模式比类行为模式具有更大的灵活性。以上 11 种行为型模式,除了和是类行为型模式,其他的全部属于对象行为型模式。原创 2023-05-31 15:21:09 · 1130 阅读 · 0 评论 -
第十三章行为型模式—模板模式
行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象无法单独完成的任务,它涉及算法与对象间职责的分配。行为型模式分为类行为模式和对象行为模式:类行为模式:采用继承机制来在类间分派行为对象行为模式:采用组合或聚合在对象间分配行为由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象行为模式比类行为模式具有更大的灵活性。以上 11 种行为型模式,除了和是类行为型模式,其他的全部属于对象行为型模式。原创 2023-05-31 15:22:00 · 1093 阅读 · 0 评论 -
第十二章创建模式—享元模式
享元模式:运用共享技术来有效地支持大量细粒度对象的复用,通过共享已经存在的对象来大幅度减少需要创建的对象数量、避免大量相似对象的开销,从而提高系统资源的利用率。原创 2023-05-15 23:30:00 · 580 阅读 · 1 评论 -
第十一章结构性模式—组合模式
结构型模式描述如何将类或对象按某种布局组成更大的结构,有以下两种:类结构型模式:采用继承机制来组织接口和类。对象结构型模式:釆用组合或聚合来组合对象。由于组合关系或聚合关系比继承关系耦合度低,满足 “合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。原创 2023-05-15 23:28:31 · 498 阅读 · 0 评论 -
第十章创建模式—外观模式
由于组合关系或聚合关系比继承关系耦合度低,满足 “合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。原创 2023-05-15 23:22:25 · 394 阅读 · 0 评论 -
第九章结构性模式—桥接模式
由于组合关系或聚合关系比继承关系耦合度低,满足 “合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。原创 2023-05-15 23:00:28 · 282 阅读 · 0 评论 -
第八章结构型模式—装饰者模式
由于组合关系或聚合关系比继承关系耦合度低,满足 “合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。原创 2023-05-15 22:59:56 · 616 阅读 · 0 评论 -
第七章结构性模式—适配器模式
将一个类的接口转换成客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类能一起工作。原创 2023-05-15 19:39:18 · 502 阅读 · 0 评论 -
第六章结构型模式—代理模式
结构型模式描述如何将类或对象按某种布局组成更大的结构,有以下两种:类结构型模式:采用继承机制来组织接口和类。对象结构型模式:釆用组合或聚合来组合对象。由于组合关系或聚合关系比继承关系耦合度低,满足,所以对象结构型模式比类结构型模式具有更大的灵活性。结构型模式分为以下 7 种:代理模式适配器模式装饰者模式桥接模式外观模式组合模式享元模式。原创 2023-05-02 01:18:00 · 691 阅读 · 0 评论 -
第五章创建模式—建造者模式
这样可以降低系统的耦合度,使用者不需要关注对象的创建细节。原创 2023-04-28 23:18:48 · 79 阅读 · 0 评论 -
第四章创建模式—原型模式
创建型模式的主要关注点是:怎样创建对象?,它的主要特点是:将对象的创建与使用分离。这样可以降低系统的耦合度,使用者不需要关注对象的创建细节。原创 2023-04-28 23:18:17 · 54 阅读 · 0 评论 -
第二章创建模式—单例设计模式
单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。原创 2023-04-28 23:17:42 · 858 阅读 · 0 评论 -
第三章创建模式—工厂模式
需求:设计一个咖啡店点餐系统。设计一个咖啡类(Coffee),并定义其两个子类:美式咖啡【AmericanCoffee】和拿铁咖啡【LatteCoffee】再设计一个咖啡店类(CoffeeStore),咖啡店具有点咖啡的功能。在 Java 中,万物皆对象,这些对象都需要创建,如果创建的时候直接 new 该对象,就会对该对象耦合严重。假如我们要更换对象,所有 new 对象的地方都需要修改一遍,这显然违背了软件设计的开闭原则。原创 2023-04-27 22:45:00 · 119 阅读 · 0 评论 -
第一章设计模式前置知识
也就是说,它是解决特定问题的一系列套路,是前辈们的代码设计经验的总结,具有一定的普遍性,可以反复使用。上面的设计我们发现了它存在的问题,黑马品牌的安全门具有防盗,防水,防火的功能。上面代码可以看到已经组装了一台电脑,但是似乎组装的电脑的cpu只能是Intel的,内存条只能是金士顿的,硬盘只能是希捷的,这对用户肯定是不友好的,用户有了机箱肯定是想按照自己的喜好,选择自己喜欢的配件。在软件工程中,类图是一种静态的结构图,描述了系统的类的集合,类的属性和类之间的关系,可以简化了人们对系统的理解;原创 2023-04-26 23:03:28 · 608 阅读 · 0 评论 -
设计模式——代理模式
织入(Weaving):代理的生成时机,织入是把切面应用到目标对象并创建新的代理对象的过程,切面在指定的连接点被织入到目标对象中。这两种方式的代理目标都是被代理类中的方法,它的作用就是通过提供一个代理类,让我们在调用目标方法的时候,不再是直接对目标方法进行调用,而是通过代理类间接调用。解决问题的困难:要抽取的代码在方法内部,靠以前把子类中的重复代码抽取到父类的方式没法解决。所以需要引入新的技术。调用目标方法时先调用代理对象的方法,减少对目标方法的调用和打扰,同时让附加功能能够集中在一起也有利于统一维护。原创 2023-01-18 23:03:37 · 1372 阅读 · 0 评论