摘要: 概述 很多情况下,可以处理某个请求的对象不止一个,如大学里的奖学金审批,学生先向辅导员提交审批表,辅导员签字审批后再交给系主任签字审批,接着是院长审批,最后可能是校长审批,在这个过程中,奖学金申请表可以看作一个请求对象,不同级别审批者都可以处理该请求,除了辅导员之外,学生不需一一和其他审批者交互,只 阅读全文
posted @ 2020-05-16 17:25 低吟不作语 阅读(579) 评论(0) 推荐(0)
摘要: 概述 某些情况下,一个客户不想或不能直接引用一个对象,此时可以通过代理对象实现间接引用,通过代理对象去掉客户不能看到的内容和添加客户需要的额外服务 模式实例 在一个论坛已注册用户和游客权限不同,已注册用户拥有发帖、修改注册信息、修改自己帖子等功能;而游客只能看到别人发的贴子,没有其他权限。本实例中我 阅读全文
posted @ 2020-05-14 22:41 低吟不作语 阅读(816) 评论(0) 推荐(0)
摘要: 概述 有时候需要在系统中增加对象的个数,并且这些对象是相同或相似的。为了避免出现大量相同或相似的对象,享元模式通过共享技术实现相同或相似对象的重用,享元模式通常会出现工厂模式,需要创建一个享元工厂来维护一个享元池,用于存储具有相同或相似的享元对象 模式分析 享元模式的核心在于享元工厂类,享元工厂类的 阅读全文
posted @ 2020-05-09 18:02 低吟不作语 阅读(568) 评论(0) 推荐(1)
摘要: 概述 在大多数情况下,网站都会提供一个网站首页作为入口,提供通往各个子栏目的超链接。用户只需记住网站首页网站 URL,而无须记住每个子栏目的网址 同理,用户与系统的交互可以通过一个外观对象进行,提供实现各种功能的子系统接口 模式实例 一个电源总开关可以控制四盏灯、一个风扇、一台空调和一台电视机的启动 阅读全文
posted @ 2020-05-02 15:25 低吟不作语 阅读(486) 评论(0) 推荐(1)
摘要: 概述 装饰模式可以在不改变一个对象本身的基础上给对象增加额外的新行为,如一张照片,可以不改变照片本身,给它增加一个相框,使得它具有防潮功能,用户可以根据需要增加不同类型的相框 在开发中,可以通过继承使子类为父类方法添加功能,但这种方式是静态的,用户不能控制增加行为的方式和时机。 装饰模式将一个对象嵌 阅读全文
posted @ 2020-05-01 13:42 低吟不作语 阅读(745) 评论(2) 推荐(0)
摘要: 概述 一个容器对象下拥有多个叶子对象,类似树形结构 模式实例 定义一个抽象类,它既可以代表叶子,也可以代表容器 public abstract class Component { public abstract void add(Component c); public abstract void 阅读全文
posted @ 2020-03-16 14:41 低吟不作语 阅读(601) 评论(0) 推荐(0)
摘要: 概述 如果要绘制矩形、圆形、椭圆、正方形,至少需要四个形状类,如果绘制的图形需要具有不同的颜色,如红色、绿色、蓝色等,此时有两种设计方案: 第一种:为每一个形状提供一套各种颜色的版本,使用继承的方法,如果有四种形状,十二种颜色,则需要四十八个类。如果要增加新形状,则同时也要具备所有的颜色 第二种:提 阅读全文
posted @ 2020-03-13 17:58 低吟不作语 阅读(476) 评论(0) 推荐(1)
摘要: 概述 我国的生活用电电压是 220V,而笔记本电脑、手机等电子设备的电压都没有这么高,这时候就需要电源适配器。有时,现有类所提供的接口不一定是用户所期待的,使用适配器可以对现有接口转化为客户期望的接口 适配器模式包含如下角色: Adapter(适配器类):对 Adaptee 进行适配 Adaptee 阅读全文
posted @ 2020-03-12 14:20 低吟不作语 阅读(561) 评论(0) 推荐(0)
摘要: 概述 单例模式可以保证系统中一个类只有一个实例而且该实例易于被外界访问 单例模式有三个要点: 某个类只能有一个实例 自行创建这个实例 自行向整个系统提供这个实例 因此,单例类必须有如下实现: 单例类的构造函数为私有 提供一个自身的静态私有成员变量 提供一个公有的静态工厂方法 模式实例 public 阅读全文
posted @ 2020-03-11 00:54 低吟不作语 阅读(468) 评论(0) 推荐(0)
摘要: 概述 有时候需要多次创建某一类型对象,为了简化创建过程,可以只创建一个对象,然后再通过克隆的方法复制出多个相同的对象 深克隆与浅克隆 通常情况下,一个类包含一些成员对象,在使用原型模式克隆对象时,根据其成员对象是否也克隆,原型模式可分为两种形式:深克隆和浅克隆 浅克隆:被复制对象的对象成员变量具有与 阅读全文
posted @ 2020-03-09 22:27 低吟不作语 阅读(582) 评论(0) 推荐(0)