![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
设计模式
设计模式
daguniang123
永不安于现状
展开
-
设计模式--------工厂模式
设计模式--------工厂模式介绍工厂模式的四大问题现在的写法有什么问题吗?为什么要用工厂模式?什么是工厂模式?工厂模式有什么好处?工厂模式细分简单工厂模式工厂方法模式抽象工厂模式采用一个案例来说明问题现有一个披萨店,需要根据不同的需求制作披萨常规思路创建一个抽象Pizza类,其中有一系列制作步骤方法,不同种类的Pizza继承此类创建一个PizzaStore类orderPizza(String type) : 根据传入的type制作不同种类的P原创 2020-08-10 15:43:01 · 141 阅读 · 0 评论 -
设计模式--------代理模式
设计模式--------代理模式介绍代理模式的三大问题什么是代理模式?代理模式有什么好处?常见的代理模式,以及应用场景什么是代理模式?代理模式:为另一个对象提供一个代表对象,以便控制客户对对象的访问(有多种管理方式)常见的使用场景远程代理:管理客户和远程对象的交互虚拟代理:控制访问实例化开销大的对象保护代理:管理调用者对对象方法的访问缓存代理,同步代理,防火墙代理等代理模式和装饰模式的不同之处:装饰模式是为对象增加新的行为代理模式是为了控制访问java原创 2020-08-09 13:35:08 · 94 阅读 · 0 评论 -
设计模式--------状态模式
设计模式--------状态模式介绍状态模式的三大问题现在的写法有什么问题?什么是状态模式?状态模式有什么好处?采用一个案例来说明问题现有一个手电筒,手电筒有五种模式,通过按下按钮来进行模式的切换常见思路创建一个手电筒类定义五种手电筒状态,并记录当前状态通过按钮方法来切换状态并调用相应的方法来执行操作MyLightpublic class MyLight { final static int NO_LIGHT = 0; fin原创 2020-08-07 14:24:26 · 109 阅读 · 0 评论 -
设计模式--------组合模式
设计模式--------组合模式介绍组合模式的三大问题什么是组合模式?组合模式有什么好处?采用一个案例来说明问题现有一个磁盘,磁盘中有文件夹也有文件,没有指定的文件夹层数,一个目录下有文件也可能有文件夹,采用一个好的方式,可以简单的遍历所有的文件,文件夹,以及可以按照指定的要求筛选...原创 2020-08-07 00:06:12 · 96 阅读 · 0 评论 -
设计模式--------迭代器模式
设计模式--------迭代器模式介绍迭代器模式的四大问题现在的写法有什么问题吗?为什么要用迭代器模式?什么是迭代器模式?迭代器模式有什么好处?使用一个例子进行问题的说明有二个工厂仓库,它们分别存着一些产品,但是这二个工厂仓库存物品的仓库不一样,导致工作人员要清点检查每个产品的时候需要分开检查,有什么办法解决呢?Good 货物public class Good { private String name; private String desc原创 2020-08-05 21:12:25 · 102 阅读 · 0 评论 -
设计模式--------模版模式
设计模式--------模版模式介绍模版模式的四大问题现在的写法有什么问题吗?为什么要用模版模式?什么是模版模式?模版模式有什么好处?使用一个例子进行问题的说明假如要制作各种形状的面包,制作面包有很多的步骤StartBreadpublic class StarBread { public void water() { System.out.println("准备水"); } public void flour() {原创 2020-08-04 21:41:20 · 75 阅读 · 0 评论 -
设计模式--------外观模式
设计模式--------外观模式介绍外观模式的四大问题现在的写法有什么问题吗?为什么要用外观模式?什么是外观模式?外观模式有什么好处?使用一个例子进行问题的说明假如要制作一个智能系统,要能用语音控制灯光的亮度,音乐的选择,音量的大小,电视的开关等, 现在要进入休闲模式,要打开灯光,打开电视,打开音乐Lightpublic class Light { public void on() { System.out.println("light原创 2020-08-03 21:46:01 · 125 阅读 · 0 评论 -
设计模式--------适配器模式
设计模式--------适配器模式采用三个问题说明适配器模式现在的写法有什么问题?什么是适配器模式适配器模式有什么好处使用一个问题来说明问题有一个公司训练蜂鸟,让蜂鸟听命令飞和走路,现在他们引进了新品种,非洲鸵鸟,他们属于不同的种类,蜂鸟属于鸟,非洲鸵鸟属于鸵鸟,现在要使用训练蜂鸟的方式训练鸵鸟,让他们也能走路和飞目前思路蜂鸟属于鸟的接口非洲鸵鸟属于鸵鸟的接口他们是二个完全不同的类,无法差生关联,所以没有办法什么是适配器模式什么是适配器: 适配器类似于插原创 2020-08-03 09:36:34 · 179 阅读 · 0 评论 -
设计模式--------命令模式
设计模式--------命令模式介绍命令模式的四大问题现在的写法有什么问题吗?为什么要用命令模式?什么是命令模式?命令模式有什么好处?使用一个例子进行问题的说明例如有一个开关遥控器,控制多个电器的开关,每个电器旁有二个按钮,分别控制开和关Lightpublic class Light { public void on() { System.out.println("light on"); } public void o原创 2020-08-02 10:25:12 · 103 阅读 · 0 评论 -
设计模式--------装饰者模式
介绍装饰者的四大问题现在的写法有什么问题吗?为什么要用装饰者模式?什么是装饰者模式?装饰者模式有什么好处?采用一个案例来说明问题现在要设计一个买奶茶系统,奶茶可分为绿茶,红茶,可以加入配料椰果,红豆等,设计这样一个系统。目前设计思路方式一寻找奶茶的共通之处,创建一个抽象茶类cost() :计算金额getDescription() : 获取奶茶名称description: 奶茶名称属性然后针对不同的搭配创建各自的奶茶类绿茶红茶椰果绿茶椰果红茶.原创 2020-07-29 10:45:04 · 91 阅读 · 0 评论 -
设计模式--------观察者模式
介绍观察者模式的四大问题现在的写法有什么问题吗?为什么要用观察者模式?什么是观察者模式?观察者模式有什么好处?采用一个案例来说明问题假如现有一个检测系统,其可以检测温度,湿度等,每当检测系统更改的时候,就需要发送更改的消息到温度显示器和湿度显示器上,以便实时观测变化现在的写法有什么问题吗?目前实现思路...原创 2020-07-28 22:01:36 · 126 阅读 · 0 评论 -
设计模式--------单例模式
设计模式——单例模式什么是单例模式单例模式的特点该对象只有一个实例无需实例化单例模式使用场景需要频繁实例化创建对象时耗时过多或者耗资源过多,但又经常用到的对象同一个数据源连接对象需要被公用的场合适合使用日志文件,应用配置线程池怎么样的加载方式才是对系统最优的呢?使用的时候再加载,减轻系统启动的负担只创建一个实例,减少内存损耗创建过程快速保证线程安全1.懒汉模式——线程不安全什么是懒汉模式——线程不安全懒汉模式字如其名:此设计方式主要是为原创 2020-07-14 16:35:26 · 88 阅读 · 0 评论