上一页 1 ··· 4 5 6 7 8 9 下一页
摘要: 模板模式 案例引入 制作豆浆问题 要求: 1.制作豆浆流程 选材->添加配料->浸泡->放到豆浆机打碎。 2.通过添加不同配料,可以制作出不同口味的豆浆。 3.选材,浸泡和放到豆浆机打碎这些步骤对于制作每种口味的豆浆都是一样的。 4.请使用模板模式,完成。(因为模板方法模式,简单,就直接写了) 基本 阅读全文
posted @ 2023-09-27 00:41 长名06 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 代理模式 基本介绍 1.代理模式,为目标对象提供一个替身,以控制这个对象的访问。即通过代理对象访问目标对象,这样做的好处是,可以在目标对象功能的基础上,增加额外的操作,即扩展目标对象的功能。 2.目标对象(被代理对象)可以是远程对象,创建开销大的对象或者需要安全控制的对象。 3.代理模式有不同的三种 阅读全文
posted @ 2023-09-24 23:39 长名06 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 享元模式 案例引入 小型的外包项目,给客户A做一个展示网站,客户A的朋友感觉效果不错,也希望做这样的产品展示网站,但是要求都有些不同。 1.有客户要求以新闻的形式发布。 2.有客户要求以博客的形式发布。 3.有客户希望以微信公众号的形式发布。 传统方案实现案例 1.直接赋值粘贴一份,根据不同客户,进 阅读全文
posted @ 2023-09-23 00:23 长名06 阅读(55) 评论(0) 推荐(0) 编辑
摘要: 外观模式 案例引入 要求,组建一个家庭影院,DVD播放器,投影仪,自动屏幕,环绕立体声,爆米花机,实现家庭影院的功能。过程为,直接用遥控器,统筹各设备开关,开爆米花机,放下屏幕,开投影仪,开音响,开dvd,选dvd,取爆米花,调暗灯光,播放电影,观影结束后,关闭各设备。 传统方式实现案例 无具体代码 阅读全文
posted @ 2023-09-20 23:51 长名06 阅读(75) 评论(0) 推荐(0) 编辑
摘要: 组合模式 案例引入 编写程序,展示学校院系结构,要求在一个页面中展示出学院的院系组成,一个学院有几个学院,一个学院有几个系。如下图 传统方案及问题分析 传统方案 系 extends 学院 extends 学校 问题分析 1.将学院看成学校的子类,系是学院的子类,这样实际上是按照组织大小进行划分层次的 阅读全文
posted @ 2023-09-18 23:31 长名06 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 装饰者模式 咖啡案例引入 1.咖啡种类,有意大利咖啡(Espresso),ShortBlack,美式咖啡(LongBlack),无因咖啡(Decaf)。 2.调料,Milk,Soy(豆浆),Chocolate(巧克力)。 3.要求再扩展新的咖啡种类时,具有良好的扩展性,改动方便,维护方便。 4.客户 阅读全文
posted @ 2023-09-17 00:48 长名06 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 桥接模式 案例引入 对不同的手机类型和不同品牌实现操作(如开机,关机,上网,打电话等)。 如手机的类型有折叠式,直立式等。手机品牌有华为,小米,vivo等。 传统方式实现案例UML图 传统方式问题分析 1.扩展性问题,如果再增加手机的样式,就需要增加各个品牌手机的类,同样我们如果增加一个手机品牌,也 阅读全文
posted @ 2023-09-14 23:56 长名06 阅读(95) 评论(0) 推荐(1) 编辑
摘要: 适配器模式 基本介绍 1.适配器模式(Adapter Pattern)将某个类的接口(方法)转换成客户期望的另一个接口(方法)表示,主要目的是兼容性,让原本因为方法不匹配的,不能一起工作的两个类可以协同工作。别名叫包装器(Wrapper)。 2.适配器模式属于结构模式。 3.主要有三种形式,类适配器 阅读全文
posted @ 2023-09-13 00:24 长名06 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 建造者模式 案例引入 1.建房子,过程分为打桩,砌墙,封顶。 2.房子有各种各样的,比如普通房,高楼,别墅,各种房子要求不一样,但是建造过程是一样的。 传统方式实现 代码如下 public abstract class AbstractHouse { public abstract void bui 阅读全文
posted @ 2023-09-10 23:06 长名06 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 原型模式 案例引入 克隆羊问题 有一只羊,姓名为tom,年龄为1,颜色为白色,编写程序创建和tom羊属性完全相同的羊。 传统方式解决 代码实现 public class Sheep { private String name; private int age; private String colo 阅读全文
posted @ 2023-09-08 22:57 长名06 阅读(65) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 下一页