![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 81
xian00000
这个作者很懒,什么都没留下…
展开
-
探索设计模式
软件设计模式来源于Christopher Alexander的建筑学模式和对象运动。根据Alexander的观点,模式就是一个对于特定的系统的通用解决方案本身的重复。对象运动关注于将现实世界模化为软件内部的关系。基于这两个原因,软件设计模式对于真实世界的物体而言同样应当是可以重复的。这篇文章呈现了现实的世界中的非软件的模式实例,这些模式来源于《设计模式-可复用面向对象软件的基础》(Design P转载 2012-04-07 11:28:00 · 773 阅读 · 0 评论 -
java设计模式-终结者者模式
概述: 用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。适用性; 1.一组对象以定义良好但是复杂的方式进行通信。产生的相互依赖关系结构混乱且难以理解。 2.一个对象引用其他很多对象并且直接与这些对象通信,导致难以复用该对象。 3.想定制一个分布在多个类中的行为,转载 2012-04-20 09:25:21 · 1743 阅读 · 0 评论 -
java设计模式-桥接模式
桥接模式是一种结构型模式,它主要应对的是:由于实际的需要,某个类具有两个或两个以上的维度变化,如果只是用继承将无法实现这种需要,或者使得设计变得相当臃肿。 桥接模式的做法是把变化部分抽象出来,使变化部分与主类分离开来,从而将多个维度的变化彻底分离。最后,提供一个管理类来组合不同维度上的变化,通过这种组合来满足业务的需要。 以下是示例代码://以下接口代表面条是否添加转载 2012-04-19 09:10:55 · 2316 阅读 · 0 评论 -
java设计模式-状态模式
在下面两种情况下均可以使用State模式:1 一个对象的行为取决于它的状态,并且他必须在运行时刻根据状态改变它的行为。2 一个操作中含有庞大的多分枝的条件语句,并且这些分支依赖于该对象的状态。这个状态通常用一个或多个枚举常量表示。通常,有多个操作包含这一相同的条件结构。State模式将每一个条件分支放入一个独立的类中。这是得你可以根据对象自身的情况将对象的状态作为一个对象,这一对象可以不依转载 2012-04-17 17:14:30 · 850 阅读 · 0 评论 -
java设计模式-命令模式
命令模式定义:将一个请求封装为一个对象,从而使你不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作下面给个例子,是模拟对电视机的操作有开机、关机、换台命令。代码如下//命令接收者public class Tv {public int currentChannel = 0;public void turnOn() { System.ou转载 2012-04-17 23:07:46 · 2155 阅读 · 0 评论 -
java设计模式-策略模式
1,什么是策略模式?策略模式,又叫算法簇模式,就是定义了不同的算法族,并且之间可以互相替换,此模式让算法的变化独立于使用算法的客户。 2,策略模式有什么好处? 策略模式的好处在于你可以动态的改变对象的行为。 3,设计原则 设计原则是把一个类中经常改变或者将来可能改变的部分提取出来,作为一个接口(c++z中可以用虚类),转载 2012-04-16 17:41:16 · 591 阅读 · 0 评论 -
java设计模式-单例模式
1,什么是单例模式?单例模式确保一个类只有一个实例,自行提供这个实例并向整个系统提供这个实例。 2,单例模式适合场景? 单例模式适合于一个类只有一个实例的情况,比如窗口管理器,打印缓冲池和文件系统,它们都是原型的例子。典型的情况是,那些对象的类型被遍及一个软件系统 的不同对象访问,因此需要一个全局的访问指针,这便是众所周知的单例模式的应用。当然这只有在你确信你转载 2012-04-16 20:17:41 · 672 阅读 · 0 评论 -
java设计模式-代理模式
1,什么是代理模式?代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问。 2,策略模式有什么好处? 在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 3,代理模式一般涉及到的角色有: 抽象角色:声明真实对象和代理对象的共同接口; 代理角色:代理对象角色转载 2012-04-16 18:39:41 · 658 阅读 · 0 评论 -
java设计模式-访问者模式
概述: 表示一个作用于某对象结构中的各元素的操作。 它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。适用性: 1.一个对象结构包含很多类对象,它们有不同的接口,而你想对这些对象实施一些依赖于其具体类的操作。 2.需要对一个对象结构中的对象进行很多不同的并且不相关的操作,而你想避免让这些操作“污染”这些对象的类。 V转载 2012-04-20 09:37:08 · 542 阅读 · 0 评论