设计模式
叶长风
会scala和python的程序员
展开
-
多例模式之有上限多例类
一个实例数目有上限的多例类已经把实例的上限当做逻辑的一部分,并建造了多例类的内部,这种模式叫做有有上限的多例模式。 比如在每一麻将牌局都需要两个骰子,因此骰子就应当是双态类,这里就以这个系统为例,说明多例模式的结构,骰子的类图如 图一所示: 多例类Die(骰子)的源代码如下所示: package Multiton; import java.util.Date; import java原创 2015-03-25 08:36:54 · 2257 阅读 · 0 评论 -
设计模式之建造模式
建造模式是对象的创建模式,建造模式可以将一个产品的内部表象和产品的生产过程分割开来,从而是一个建造过程生成具有不同的内部表象的产品 对象。 建造模式的结构如下类图所示: 在这个系统中,最终产品Product只有两个零件,即part1和part2,相应的建造方法也有两个:buildPart1()和buildPart2(),同时呢本模式涉及到四个角色,分别为: *抽象建造者(Builder原创 2015-04-10 07:43:19 · 1069 阅读 · 1 评论 -
原始(prototype)模型模式之简单形式与登记形式
原始模型模式有两种表现形式:第一种是简单形式,第二种是登记形式,下面将分别讲解两种原型模型模式的不同实现。 简单形式的原始模型模式 uml类图为: 这种形式涉及到三种角色: *客户(Client)角色:客户类提出创建对象的请求。 *抽象原型(Prototype)角色:这是一个抽象角色,通常由一个Java接口或者java抽象类实现。 *具体原型(Concrete Prototype)原创 2015-04-22 07:30:08 · 1610 阅读 · 1 评论 -
适配器模式之类的适配器模式与对象的适配器模式
适配器模式有类的适配器模式和对象的适配器模式两种不同的形式,如下图所示,左边是类的适配器模式,右边是对象的适配器模式。 类的适配器模式: 以下是uml类图: 模式所涉及的角色有: *目标(Target)角色:这就是所期待得到的接口。注意,由于这里讨论的是类适配器模式,因此目标不可以是类。 *源(Adaptee)角色:现有需要适配的接口。 *适配器(Adapter)角色:适配器类原创 2015-05-03 15:59:28 · 2256 阅读 · 1 评论