设计模式详解(Java)
本专栏会持续更新设计模式的笔记
大雄不是大熊
加油ing
展开
-
创建型模式 | 原型模式解析及应用
原型模式一、介绍二、特点三、使用场景四、类图与角色五、实战代码【Apple.java】【Banana .java】【MyFruit .java】【MyFruitStore .java】【Client .java】运行截图:一、介绍定义:原型模式(Prototype Pattern)用于创建重复的对象。实现一个原型接口,该接口用于创建当前对象的克隆。当直接创建对象的代价比较大时,则采用这种模式...原创 2020-04-29 19:48:47 · 434 阅读 · 0 评论 -
创建型模式 | 抽象工厂模式解析及应用
抽象工厂模式一、介绍二、特点三、使用场景四、角色五、实战代码目录结构:步骤1. 创建图形接口和图形抽象类【Shape.java】【Rectange.java】【Circle .java】步骤2. 创建工厂接口和抽象类【ShapeFactory .java】【RedShapeFactory .java】【BlueShapeFactory .java】步骤3. 创建具体图形产品类【RedCircle...原创 2020-04-28 18:37:32 · 449 阅读 · 0 评论 -
创建型模式 | 工厂方法模式解析及应用
工厂方法模式一、介绍二、特点三、使用场景四、类图五、实战代码步骤1. 创建抽象工厂类【FruitFactory .java】步骤2. 创建抽象产品类【ProductA .java】步骤3. 创建具体产品类【Apple .java】【Banana .java】步骤4. 创建具体工厂类【FactoryApple .java】【FactoryBanana .java】步骤5. 客户端创建不同具体产品...原创 2020-04-20 14:07:37 · 573 阅读 · 0 评论 -
创建型模式 | 简单工厂模式解析及应用
简单工厂模式一、定义二、特点三、使用场景四、类图五、实战代码步骤1. 创建抽象产品类【Product .java】步骤2. 创建具体产品类【ProductA .java】【ProductB .java】【ProductC .java】步骤3. 创建工厂类【ProductFactory .java】步骤4. 客户端传入不同参数创建不同具体产品类【ClientClass.java】运行截图:一、定义...原创 2020-04-20 13:44:34 · 562 阅读 · 0 评论 -
行为型模式 | 策略模式解析及应用
策略模式一、定义二、特点三、使用场景四、类图五、实战代码【Command.java】【OrderCommand .java】【Order.java】【Waitor_Invoker.java】【Operator.java】【ClientClass.java】一、定义策略模式(Strategypattern):定义一系列算法,将每一个算法封装起来工并让它们可以相互替换。策略模式让算法独立于使用它的...原创 2020-03-22 20:08:45 · 245 阅读 · 0 评论 -
行为型模式 | 状态模式解析及应用
状态模式一、定义二、特点三、使用场景四、类图五、实战代码【Command.java】【OrderCommand .java】【Order.java】【Waitor_Invoker.java】【Operator.java】【ClientClass.java】一、定义状态模式:对有状态的对象,把复杂的“判断逻辑”提取到不同的状态对象中,允许状态对象在其内部状态发生改变时改变其行为。(命令模式是一...原创 2020-03-22 19:25:32 · 477 阅读 · 0 评论 -
行为型模式 | 观察者模式解析及应用
观察者模式一、定义二、特点三、使用场景四、类图五、实战代码【Command.java】【OrderCommand .java】【Order.java】【Waitor_Invoker.java】【Operator.java】【ClientClass.java】一、定义观察者模式:指多个对象间存在一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。这种模式有时...原创 2020-03-22 16:35:10 · 442 阅读 · 0 评论 -
行为型模式 | 命令模式解析及应用
命令模式一、定义二、特点三、使用场景四、类图五、实战代码【Command.java】【OrderCommand .java】【Order.java】【Waitor_Invoker.java】【Operator.java】【ClientClass.java】一、定义命令模式:将一个请求封装为一个对象,从而使我们可用不同的请求对客户进行参数化,对请求排队或者记录请求日志,以及支持可撤销的操作。(...原创 2020-03-16 11:38:12 · 345 阅读 · 0 评论 -
行为型模式 | 职责链模式解析及应用
职责链模式定义特点使用场景类图代码定义为避免请求发送者与多个请求处理者耦合在一起,将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象处理它为止。职责链模式也称责任链模式,它是一种对象行为型模式。特点责任链模式是一种对象行为型模式,其主要优点如下。降低了对象之间的耦合度。该模式使得一个对象无须知道到底是哪一个对象处理其请求以...原创 2020-03-15 15:42:14 · 256 阅读 · 0 评论