上一页 1 ··· 41 42 43 44 45 46 47 48 49 ··· 69 下一页
摘要: 1. 概述 外观模式,我们通过外观的包装,使应用程序只能看到外观对象,而不会看到具体的细节对象,这样无疑会降低应用程序的复杂度,并且提高了程序的可维护性。例子1:一个电源总开关可以控制四盏灯、一个风扇、一台空调和一台电视机的启动和关闭。该电源总开关可以同时控制上述所有电器设备,电源总开关即为该系统... 阅读全文
posted @ 2014-08-03 10:14 二郎那个三郎 阅读(276) 评论(0) 推荐(0)
摘要: 1. 概述 若你从事过面向对象开发,实现给一个类或对象增加行为,使用继承机制,这是所有面向对象语言的一个基本特性。如果已经存在的一个类缺少某些方法,或者须要给方法添加更多的功能(魅力),你也许会仅仅继承这个类来产生一个新类—这建立在额外的代码上。 通过继承一个现有类可以使得子类在拥有自身方法的... 阅读全文
posted @ 2014-08-03 10:05 二郎那个三郎 阅读(247) 评论(0) 推荐(0)
摘要: 1. 概述在数据结构里面,树结构是很重要,我们可以把树的结构应用到设计模式里面。例子1:就是多级树形菜单。例子2:文件和文件夹目录2.问题我们可以使用简单的对象组合成复杂的对象,而这个复杂对象有可以组合成更大的对象。我们可以把简单这些对象定义成类,然后定义一些容器类来存储这些简单对象。客户端代码必须... 阅读全文
posted @ 2014-08-03 09:47 二郎那个三郎 阅读(265) 评论(0) 推荐(0)
摘要: 1. 概述 在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?如何利用面向对象的技术来使得该类型能够轻松的沿着多个方向进行变化,而又不引入额外的复杂度?例子1:设想如果要绘制矩形、圆形、椭圆、正方形,我们至少需要4个形状类,但是如果绘制的图形需要具... 阅读全文
posted @ 2014-08-03 09:28 二郎那个三郎 阅读(398) 评论(0) 推荐(0)
摘要: 1. 概述:接口的改变,是一个需要程序员们必须(虽然很不情愿)接受和处理的普遍问题。程序提供者们修改他们的代码;系统库被修正;各种程序语言以及相关库的发展和进化。 例子1:iphone4,你即可以使用UBS接口连接电脑来充电,假如只有iphone没有电脑,怎么办呢?苹果提供了iphone电源适配... 阅读全文
posted @ 2014-08-03 09:11 二郎那个三郎 阅读(235) 评论(0) 推荐(0)
摘要: 在画类图的时候,理清类和类之间的关系是重点。类的关系有泛化(Generalization)、实现(Realization)、依赖(Dependency)和关联(Association)。其中关联又分为一般关联关系和聚合关系(Aggregation),合成关系(Composition)。下面我们结合实... 阅读全文
posted @ 2014-08-03 08:44 二郎那个三郎 阅读(222) 评论(0) 推荐(0)
摘要: 1.定义当需要控制一个类的实例数量且调用者可以从一个公共的访问点访问时。 2.适用场景1. 当类只能有一个实例而且客户可以从一个众所周知的访问点访问它时。2. 当这个唯一实例应该是通过子类化可扩展的,并且客户应该无需更改代码就能使用一个扩展的实例时。 3.评价优点:1. 对唯一实例的受控访问,... 阅读全文
posted @ 2014-07-24 21:57 二郎那个三郎 阅读(545) 评论(2) 推荐(0)
摘要: 1.定义用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 2.适用场景原型模式的主要思想是基于现有的对象克隆一个新的对象出来,一般是有对象的内部提供克隆的方法,通过该方法返回一个对象的副本,这种创建对象的方式,相比我们之前说的几类创建型模式还是有区别的,之前的讲述的工厂模式与抽象工... 阅读全文
posted @ 2014-07-24 21:42 二郎那个三郎 阅读(282) 评论(0) 推荐(0)
摘要: 1.定义定义一个用于创建对象的接口,让子类决定实例化哪一个类,Factory Method使一个类的实例化延迟到了子类。 2.适用场景1.第一种情况是对于某个产品,调用者清楚地知道应该使用哪个具体工厂服务,实例化该具体工厂,生产出具体的产品来。Java Collection中的iterator()... 阅读全文
posted @ 2014-07-24 21:22 二郎那个三郎 阅读(275) 评论(0) 推荐(0)
摘要: 1.定义 简单工厂模式又称静态工厂方法模式。重命名上就可以看出这个模式一定很简单。它存在的目的很简单:定义一个用于创建对象的接口。 2.适用场景如果一个客户要一款宝马车,一般的做法是客户去创建一款宝马车,然后拿来用。后来出现工业革命。用户不用去创建宝马车。因为客户有一个工厂来帮他创建宝马.想要什么... 阅读全文
posted @ 2014-07-24 20:51 二郎那个三郎 阅读(569) 评论(0) 推荐(0)
上一页 1 ··· 41 42 43 44 45 46 47 48 49 ··· 69 下一页