摘要: 策略模式 案例引入 duck项目 要求: 1.有各种鸭子,比如野鸭,北京鸭,水鸭等,鸭子有各种行为,比如叫,飞行。 2.显示鸭子的信息。 传统方式实现案例 1.抽象一个父类duck,有其子类,野鸭、北京鸭、水鸭等。 代码 /** * @author 长名06 * @version 1.0 */ pu 阅读全文
posted @ 2023-10-15 23:48 长名06 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 状态模式 案例引入 APP抽奖活动 请编写抽象完成APP抽奖活动,具体要求如下: 1.假如每参加一次这个活动要扣除用户50积分,中将概率是10%。 2.奖品数量固定,抽完就不能抽了。 3.活动状态有四个,分别是,可以抽奖,不能抽奖,发送奖品,奖品已领完。 4.活动的状态转换图 基本介绍 1.状态模式 阅读全文
posted @ 2023-10-13 23:17 长名06 阅读(51) 评论(0) 推荐(0) 编辑
摘要: 解释器模式 案例引入 四则运算问题 通过解释器模式来实现四则运算(先只考虑 + -),如计算a + b - c的值,具体要求 1.先输入表达式,比如a + b + c -d + e,要求表达式的字母不能重复。 2.再分别输入a,b,c,d,e的值。 3.最后求出结果。 传统方法实现四则运算问题及分析 阅读全文
posted @ 2023-10-12 00:08 长名06 阅读(43) 评论(0) 推荐(0) 编辑
摘要: 备忘录模式 案例引入 游戏角色状态恢复问题 游戏角色有攻击力,防御力等,在大战BOSS前保存自身的状态(攻击力,防御力),当大战BOSS后攻击力和防御力下降,从备忘录对象恢复到大站前的状态。 传统方式实现案例 创建一个游戏角色类对应的状态类,给每个游戏角色对象,对应一个对应状态类的对象,用来保存状态 阅读全文
posted @ 2023-10-09 23:26 长名06 阅读(53) 评论(0) 推荐(0) 编辑
摘要: 中介者模式 案例引入 要求 1.智能家庭包括设备,闹钟,咖啡机,窗帘等。 2.主人要看电视时,各个设备可以协同工作,自动完成看电视的准备工作,比如流程为,闹钟响起-> 咖啡机开始做咖啡->窗帘自动落下->电视机开始播放。 传统方式实现案例 有闹钟类(Alarm),电视类(TV),窗帘类(Curtai 阅读全文
posted @ 2023-10-07 23:39 长名06 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 观察者模式 案例引入 要求 气象站案例要求 1.气象站,可以将每天测量到的湿度,温度,气压等气象信息以公告的形式发布出去(发布到自己的网站或者第三方平台)。 2.需要设计开发新的api,便于其他第三方也能接入气象站的数据。 3.提供温度,气压,湿度的接口。 4.策略的数据更新后,实时的通知第三方。 阅读全文
posted @ 2023-10-05 22:35 长名06 阅读(54) 评论(0) 推荐(0) 编辑
摘要: 迭代器模式 案例引入 需求 编写需求展示一个学校院系结构,需求是这样,要在一个页面中展示出学校的院系组成,一个学校有多个学院,一个学院有多个系,且多个学院,存储系的数据机构不同,有的是集合,有的是数组。 传统解决方式 让系继承学院,学院继承学校。 传统解决方式问题分析 1.将学院看做是学校的子类,系 阅读全文
posted @ 2023-10-03 23:09 长名06 阅读(35) 评论(0) 推荐(0) 编辑
摘要: 访问者模式 案例引入 要求 1.将观众分为男生和女生,对歌手进行评价,当看完某个歌手表演后,对于歌手有不同的评价(评价的类别,有成功,失败等)。 传统方式实现思路 创建一个Person类,其有两个子类,分别是Man和WoMan,使用if else分支,去判断一个歌手的评价,成功对应成功分支,失败对应 阅读全文
posted @ 2023-09-30 23:00 长名06 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 命令模式 案例引入 要求 1.买了一套智能家电,有照明灯,风扇,冰箱,洗衣机,我们只要在手机上安装app就可以控制这些家电工作。 2.这些智能家电来自不同的厂家,不想针对每一种家电都安装一个app,分别控制,希望使用一个app就可以控制全部的智能家电。 3.要实现,一个app控制所有智能家电的需求, 阅读全文
posted @ 2023-09-28 23:13 长名06 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 模板模式 案例引入 制作豆浆问题 要求: 1.制作豆浆流程 选材->添加配料->浸泡->放到豆浆机打碎。 2.通过添加不同配料,可以制作出不同口味的豆浆。 3.选材,浸泡和放到豆浆机打碎这些步骤对于制作每种口味的豆浆都是一样的。 4.请使用模板模式,完成。(因为模板方法模式,简单,就直接写了) 基本 阅读全文
posted @ 2023-09-27 00:41 长名06 阅读(52) 评论(0) 推荐(0) 编辑