个人博客
Java实现 生产者/消费者模式 Java实现 生产者/消费者模式
Java实现 生产者/消费者模式消费者/生产者模式是一种常见的并发设计模式,用于解决多个线程之间的协作问题。该模式包含两个角色:生产者和消费者。生产者负责生成数据,并将其存放在缓冲区中;消费者从缓冲区中取出数据并进行消费。 当生产者生成数据
解释器模式 解释器模式
解释器模式1、四则运算问题通过解释器模式来实现四则运算,如计算a + b - c的值,具体要求 1)先输入表达式的形式,比如a + b + c - d + e,要求表达式的字母不能重复 2)在分别输入a, b, c, d, e的值 3
2022-08-29
备忘录模式 备忘录模式
备忘录模式1、游戏角色状态恢复问题游戏鱼色有攻击力和防御力,在大战 Boss 前保存自身的状态(攻击力和防御力),当大战 Boss 后攻击力和防御万下降,从备忘录对象恢复到大战前的状态 传统方案 传统方案问题分析 1)一个对象,就对应一
2022-08-25
中介者模式 中介者模式
中介者模式1、智能家庭管理问题智能家庭项目: 1)智能家庭包括各种设备,闹钟、咖啡机、电视机、窗帘等 2)主人要看电视时,各个设备可以协同工作,自动完成看电视的准备工作,比如流程为: 闹铃响起 => 咖啡机开始做咖啡 =>
2022-08-22
观察者模式 观察者模式
观察者模式1、天气预报需求具体要求如下: 1)气象站可以将每天测量到的温度,湿度,气压等等以公告的形式发布出去(比如发布到自己的网站或第三方) 2)需要设计开放型 API,便于其他第三方也能接入气象站获取数据 3)提供温度、气压和湿度
2022-08-10
迭代器模式 迭代器模式
迭代器模式1、学校院系结构展示需求编写程序展示一个学校院系结构,要在一个页面中展示出学校的院系组成,一个学校有多个学院,一个学院有多个系。如图: 传统方案分析 1)将学院看做是学校的子类,系是学院的子类,这样实际上是站在组织大小来进行分
2022-08-09
访问者模式 访问者模式
访问者模式1、测评系统完成测评系统需求 1)将人、观众分为男人和女人,对歌手进行测评,当看完某个歌手表演后,得到他们对该歌手不同的评价(评价有不同的种类,比如成功、失败等) 2)传统方案 传统方式的问题分析 1)如果系统比较小,
2022-08-05
命令模式 命令模式
命令模式1、智能生活项目需求 1)我们买了一套智能家电,有照明灯、风扇、冰箱、洗衣机,只要在手机上安装 APP 就可以控制这些家电的工作 2)这些智能家电来自不同的厂家,我们不想针对每一种家电都安装一个 APP 分别控制,我们希望只要一
2022-08-03
模板模式 模板模式
模板模式1、豆浆制作问题编写制作豆浆的程序,说明如下: 1)制作豆浆的流程选材 —-> 添加配料 —-> 浸泡 —-> 放到豆浆机打碎 2)通过添加不同的配料,可以制作出不同口味的豆浆 3)选材、浸泡和放到豆浆机打碎
2022-08-02
代理模式 代理模式
代理模式1、代理模式的基本介绍 1)代理模式:为一个对象提供一个替身,以控制对这个对象的访问。即通过代理对象访问目标对象 2)这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能 3)被代理的对象可以是远
2022-08-01
1 / 3