设计模式
LittleWheat
凡杀不死我的,必使我更强大
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【设计模式】Java设计模式之命令模式
目录一、为什么使用命令模式二、模式定义三、模式结构四、模式优点五、模式缺点六、模式适用环境七、模式应用实例一、为什么使用命令模式在软件设计中,我们经常需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是哪个,我们只需在程序运行时指定具体的请求接收者即可,此时,可以使用命令模式来进行设计,使得请求发送者与请求接收者消除彼此之间的耦合,让对象...原创 2020-02-16 09:59:02 · 495 阅读 · 0 评论 -
【设计模式】Java设计模式之职责链模式
目录一、为什么使用职责链模式二、模式定义三、模式结构四、模式优点五、模式缺点六、模式适用环境七、模式应用实例一、为什么使用职责链模式假设某学校规定,学生请假要根据请假天数找不同的老师盖章,请假3天以下,班主任盖章,3~7天需要年级主任盖章,7天以上需要教导主任盖章。作为一个学生,我只需要向老师发出请假请求,不管是谁处理了该事件,将请求发送到该链上以后,请求在这...原创 2020-02-16 09:02:37 · 236 阅读 · 0 评论 -
【设计模式】Java设计模式之享元模式
目录一、为什么使用享元模式二、模式定义三、模式结构四、模式优点五、模式缺点六、模式适用环境一、为什么使用享元模式享元模式(FlyweightPattern)也叫蝇量模式;运用共享技术有效地支持大量细粒度的对象常用于系统底层开发,解决系统的性能问题。像数据库连接池,里面都是创建好的连接对象,在这些连接对象中有我们需要的则直接拿来用,避免重新创建,如果没有我们需...原创 2020-02-15 20:04:29 · 385 阅读 · 0 评论 -
【设计模式】Java设计模式之外观模式
目录一、为什么要使用外观模式二、模式定义三、模式结构四、模式优点五、模式缺点六、使用环境一、为什么要使用外观模式网站上有各个不同的板块,但是都通过网站首页进入,首页是一个外观对象,通过它进入各个模块。进游乐场玩耍,需要先从大门进入,大门是一个外观对象,然后通过大门指引前往某项目。引入外观角色之后,用户只需要直接与外观角色交互,用户与子系统之间的复杂关系由...原创 2020-02-15 19:33:55 · 309 阅读 · 0 评论 -
【设计模式】Java设计模式之代理模式
一、为什么使用代理模式有一天,小花收到了来自铁憨憨小刚的情书,小花表示,是狗粮不好吃还是作业不够多?这代码它不香吗,搞什么恋爱?但是她不想当面拒绝小刚,于是她找到了好朋友小红,替她向小刚表达婉拒之意。在这里,“小红”就是一个代理。代理对象可以在客户端和目标对象之间起到中介的作用,并且可以通过代理对象去掉客户不能看到的内容和服务或者添加客户需要的额外服务。二、模式定义代理模式(P...原创 2020-02-15 19:22:09 · 404 阅读 · 0 评论 -
【设计模式】Java设计模式之装饰模式
目录一、为什么使用装饰模式二、模式定义三、模式结构四、模式优点五、模式缺点六、模式适用环境七、应用实例一、为什么使用装饰模式当我们想要为一个类或者对象添加行为的时候,一般有两种方式:• 继承机制,使用继承机制是给现有类添加功能的一种有效途径,通过继承一个现有类可以使得子类在拥有自身方法的同时还拥有父类的方法。但是这种方法是静态的,用户不能控制增加行为的方式和...原创 2020-02-15 19:01:30 · 346 阅读 · 0 评论 -
【设计模式】Java设计模式之组合模式
一、为什么使用组合模式文件的树形结构学校的组织形式类似的还有公司的职能树等。组合模式描述了如何将容器对象和叶子对象进行递归组合,使得用户在使用时无须对它们进行区分,可以一致地对待容器对象和叶子对象,这就是组合模式的模式动机二、模式定义组合模式(Composite Pattern):组合多个对象形成树形结构以表示“整体-部分”的结构层次。组合模式对单个对象(即叶...原创 2020-02-14 17:42:21 · 442 阅读 · 0 评论 -
【设计模式】Java设计模式之桥接模式
一、为什么使用桥接模式设想如果要绘制矩形、圆形、椭圆、正方形,我们至少需要4个形状类,但是如果绘制的图形需要具有不同的颜色,如红色、绿色、蓝色等,此时至少有如下两种设计方案: • 第一种设计方案是为每一种形状都提供一套各种颜色的版本。 • 第二种设计方案是根据实际需要对形状和颜色进行组合方案一:方案二:桥接模式将继承关系转换为关联关系,从而降低了类...原创 2020-02-14 17:22:57 · 535 阅读 · 0 评论 -
【设计模式】Java设计模式之适配器模式
目录一、为什么适用适配器模式二、模式定义三、模式结构1、类适配器:2、对象适配器:四、模式优缺点五、适用环境六、模式应用实例一、为什么适用适配器模式思考生活中的一个场景:出门玩耍,想听音乐,小米手机,掏出耳机,突然发现,耳机带了,但是没有带TypeC转换头!发挥转换头功能的就是适配器。将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于...原创 2020-02-14 16:57:00 · 242 阅读 · 0 评论 -
【设计模式】创建型模式/结构型模式/行为型模式概述
一、设计模式的分类根据其目的(模式是用来做什么的)可分为创建型 (Creational),结构型(Structural)和行为型 (Behavioral)三种: • 创建型模式主要用于创建对象。 • 结构型模式主要用于处理类或对象的组合。 • 行为型模式主要用于描述对类或对象怎样交互和怎样分配职责。根据范围,即模式主要是用于处理类之间关系还是处理对象之间的关系,可分为类模式和...原创 2020-02-13 22:13:20 · 7506 阅读 · 0 评论 -
【设计模式】Java设计模式之建造者模式
目录一、为什么使用建造者模式二、模式定义三、模式结构四、模式优点五、模式缺点六、适用环境一、为什么使用建造者模式建造者模式可以将部件和其组装过程分开,一步一步创建一个复杂的对象。用户只需要指定复杂对象的类型就可以得到该对象,而无须知道其内部的具体构造细节。二、模式定义建造者模式(Builder Pattern):将一个复杂对象的构建与它的表示分离,使得同样...原创 2020-02-13 21:56:18 · 803 阅读 · 0 评论 -
【设计模式】Java设计模式之原型模式
目录一、为什么要用原型模式二、模式定义三、模式结构四、模式分析五、实例代码六、模式优点七、模式缺点八、模式适用环境一、为什么要用原型模式二、模式定义原型模式(Prototype Pattern):原型模式是一种对象创建型模式,用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。原型模式允许一个对象再创建另外一个可定制的对象,无须知道任何创建的...原创 2020-02-13 21:49:49 · 191 阅读 · 0 评论 -
【设计模式】Java设计模式之抽象工厂模式
目录一、为何要用抽象工厂模式二、模式定义三、模式结构四、模式优点五、模式缺点六、模式适用环境一、为何要用抽象工厂模式当系统所提供的工厂所需生产的具体产品并不是一个简单的对象,而是多个位于不同产品等级结构中属于不同类型的具体产品时需要使用抽象工厂模式。 抽象工厂模式是所有形式的工厂模式中最为抽象和最具一般性的一种形态。 抽象工厂模式与工厂方法模式最大的区别在于...原创 2020-02-13 21:41:17 · 206 阅读 · 0 评论 -
【设计模式】Java设计模式之工厂方法模式
目录一、简单工厂模式的不足二、模式定义三、模式结构四、工厂方法模式优点五、工厂方法模式的缺点六、模式适用环境一、简单工厂模式的不足简单工厂模式最大的缺点是当有新产品要加入到系统中时,必须修改工厂类,加入必要的处理逻辑违背了“开闭原则”。在简单工厂模式中,所有的产品都是由同一个工厂创建,工厂类职责较重,业务逻辑较为复杂,具体产品与工厂类之间的耦合度高,严重影响了系统的...原创 2020-02-13 21:30:34 · 391 阅读 · 0 评论 -
【设计模式】Java设计模式之简单工厂模式
一、模式定义简单工厂模式(Simple Factory Pattern):又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。在简单工厂模式中,可以根据参数的不同返回不同类的实例。简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。简单的说,定义一个工厂类,他可以根据参数的不同返回不同类的实例,被创建的实例通常都具有共同...原创 2020-02-13 21:19:17 · 302 阅读 · 0 评论 -
【设计模式】Java设计模式之单例模式
目录一、模式动机与定义1、模式动机2、模式定义二、模式结构与分析1、模式结构2、模式分析三、单例模式八种方式四、模式的优缺点1、单例模式的优点2、单例模式的缺点五、模式适用的环境六、单例模式在JDK中的应用一、模式动机与定义1、模式动机在做开发的过程中,会注意到这样的需求,系统中的某个类只需要或只能有一个实例。想要保证一个类只有一个实例且...原创 2020-02-08 09:02:17 · 275 阅读 · 0 评论
分享