摘要:
Visitor定义 作用于某个对象群中各个对象的操作. 它可以使你在不改变这些对象本身的情况下,定义作用于这些对象的新操作. 在Java中,Visitor模式实际上是分离了collection结构中的元素和对这些元素进行操作的行为. 为何使用Visitor? Java的Collection(包括Vector和Hashtable)是我们最经常使用的技术,可是Collection好象是... 阅读全文
posted @ 2016-04-10 21:21
临渊启明
阅读(252)
评论(0)
推荐(0)
摘要:
Template定义: 定义一个操作中算法的骨架,将一些步骤的执行延迟到其子类中. 其实Java的抽象类本来就是Template模式,因此使用很普遍.而且很容易理解和使用,我们直接以示例开始: public abstract class Benchmark { /** * 下面操作是我们希望在子类中完成 */ public abstract void benchm... 阅读全文
posted @ 2016-04-10 21:18
临渊启明
阅读(237)
评论(0)
推荐(0)
摘要:
Strategy是属于设计模式中 对象行为型模式,主要是定义一系列的算法,把这些算法一个个封装成单独的类. Stratrgy应用比较广泛,比如, 公司经营业务变化图, 可能有两种实现方式,一个是线条曲线,一个是框图(bar),这是两种算法,可以使用Strategy实现. 这里以字符串替代为例, 有一个文件,我们需要读取后,希望替代其中相应的变量,然后输出.关于替代其中变量的方法可能有多种方法,... 阅读全文
posted @ 2016-04-10 21:15
临渊启明
阅读(183)
评论(0)
推荐(0)
摘要:
State的定义: 不同的状态,不同的行为;或者说,每个状态有着相应的行为. 何时使用? State模式在实际使用中比较多,适合"状态的切换".因为我们经常会使用If elseif else 进行状态切换, 如果针对状态的这样判断切换反复出现,我们就要联想到是否可以采取State模式了. 不只是根据状态,也有根据属性.如果某个对象的属性不同,对象的行为就不一样,这点在数据库系统中出现频率... 阅读全文
posted @ 2016-04-10 21:11
临渊启明
阅读(316)
评论(0)
推荐(0)
摘要:
定义: Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。 在很多操作中,比如建立目录 数据库连接都需要这样的单线程操作。 还有, singleton能够被状态化; 这样,多个单态类在一起就可以作为一个状态仓库一样向外提供服务,比如,你要论坛中的帖子计数器,每次浏览一次需要计数,单态类能否保持住这个计数,并且能synchronize的安全自动加1... 阅读全文
posted @ 2016-04-10 21:05
临渊启明
阅读(177)
评论(0)
推荐(0)
摘要:
理解并使用设计模式,能够培养我们良好的面向对象编程习惯,同时在实际应用中,可以如鱼得水,享受游刃有余的乐趣. Proxy是比较有用途的一种模式,而且变种较多,应用场合覆盖从小结构到整个系统的大结构,Proxy是代理的意思,我们也许有代理服务器等概念,代理概念可以解释为:在出发点到目的地之间有一道中间层,意为代理. 设计模式中定义: 为其他对象提供一种代理以控制对这个对象的访问. 为什么要使用... 阅读全文
posted @ 2016-04-10 21:01
临渊启明
阅读(268)
评论(0)
推荐(0)
摘要:
定义: 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象. Prototype模式允许一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节,工作原理是:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建。 如何使用? 因为Java中的提供clone()方法来实现对象的克隆(具体了解clone()按这里),所... 阅读全文
posted @ 2016-04-10 20:55
临渊启明
阅读(160)
评论(0)
推荐(0)
摘要:
Java深入到一定程度,就不可避免的碰到设计模式(design pattern)这一概念,了解设计模式,将使自己对java中的接口或抽象类应用有更深的理解.设计模式在java的中型系统中应用广泛,遵循一定的编程模式,才能使自己的代码便于理解,易于交流,Observer(观察者)模式是比较常用的一个模式,尤其在界面设计中应用广泛,而本站所关注的是Java在电子商务系统中应用,因此想从电子商务实例中分... 阅读全文
posted @ 2016-04-10 20:53
临渊启明
阅读(234)
评论(0)
推荐(0)
摘要:
Memento定义: memento是一个保存另外一个对象内部状态拷贝的对象.这样以后就可以将该对象恢复到原先保存的状态. Memento模式相对也比较好理解,我们看下列代码: public class Originator { private int number; private File file = null; public Originator(){}... 阅读全文
posted @ 2016-04-10 20:46
临渊启明
阅读(194)
评论(0)
推荐(0)
摘要:
Mediator定义: 用一个中介对象来封装一系列关于对象交互行为. 为何使用Mediator? 各个对象之间的交互操作非常多;每个对象的行为操作都依赖彼此对方,修改一个对象的行为,同时会涉及到修改很多其他对象的行为,如果使用Mediator模式,可以使各个对象间的耦合松散,只需关心和 Mediator的关系,使多对多的关系变成了一对多的关系,可以降低系统的复杂性,提高可修改扩展性... 阅读全文
posted @ 2016-04-10 20:42
临渊启明
阅读(150)
评论(0)
推荐(0)
摘要:
Interpreter定义: 定义语言的文法 ,并且建立一个解释器来解释该语言中的句子. Interpreter似乎使用面不是很广,它描述了一个语言解释器是如何构成的,在实际应用中,我们可能很少去构造一个语言的文法.我们还是来简单的了解一下: 首先要建立一个接口,用来描述共同的操作. public interface AbstractExpression { void ... 阅读全文
posted @ 2016-04-10 20:39
临渊启明
阅读(183)
评论(0)
推荐(0)
摘要:
XFire 是与 Axis 2 并列的新一代 Web Service 框架,通过提供简单的 API 支持 Web Service 各项标准协议,能够快速地开发 Web Service 应用。和其他 Web 服务引擎相比,XFire 的配置非常简单,可以非常容易地和 Spring 集成。 以下以一个实例讲解如何编写一个 Xfire 的服务端与客户端: xfire版本:xfire-distributi... 阅读全文
posted @ 2016-04-10 09:37
临渊启明
阅读(812)
评论(0)
推荐(0)