
设计模式
webrobot
我爱旅游
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
策略模式(Strategy)
/* 策略模式(Strategy) * 组成: * --抽象策略角色:策略类,通常由一个接口或者抽象类实现 * --具体策略角色:包装了算法行为 * --环境角色:持有一个策略类的引用,最终给客户端调用。 * 意义: * --可以使开发人员开发出许多可以替换的部分组成的软件,并且各个部分之间是弱连接关系。 * --弱连接特性使软件有更强扩展性。 * 缺点: * 1、客户端必须知道所有的策略类,并自行决定使用哪个策略类。 * 2、造成很多策略类 * 解决方法:原创 2011-04-06 14:35:00 · 670 阅读 · 0 评论 -
建造者模式(builder)
/* * Builder模式是一种对象创建型模式之一,用来隐藏复合对象的创建过程,它把复合对象的创建过程加以抽象, * 通过子类继承和重载的方式,动态地创建具有复合属性的对象。 * 组成: * 组件角色: * 抽象建造角色:定义了建造的功能接口,并定义了一个返回组件角色的接口 * 具体建造角色:实现了抽象建造角色。 * 设计师角色:包含一个抽象建造角色的引用。并定义了一个完成抽象角色所有功能的功能块。 */原创 2011-04-11 01:17:00 · 692 阅读 · 0 评论 -
原型模式(Prototype)
Prototype原型模式主要用于复制对象 ,将被复制的对象必须实现Cloneable接口。 对象复制分为:对象浅复制、对象深复制 例如Person对象 对象浅复制--- Person 对象内简单的属性复制 对象深复制--- Person 对象内不仅仅简单属性可以复制,引用属性Friend也可以一并复制出来。原创 2011-04-10 22:13:00 · 478 阅读 · 0 评论 -
状态模式(State)
状态模式原创 2011-04-09 09:03:00 · 485 阅读 · 0 评论 -
迭代模式(Iterator)
迭代模式原创 2011-04-09 09:03:00 · 521 阅读 · 0 评论 -
适配器模式(Adapter)
适配器模式原创 2011-04-09 09:02:00 · 465 阅读 · 0 评论 -
单例模式(Singleton)
单例模式(Singleton),保证一个类、 只有一个实例存在,同时提供能对该实例加以访问的全局访问方法。原创 2011-04-09 09:02:00 · 386 阅读 · 0 评论 -
简单工厂及抽象工厂模式(SimpleFactory、AbstractFactory)
简单工厂及抽象工厂模式原创 2011-04-09 09:01:00 · 809 阅读 · 0 评论 -
代理及动态代理模式(Proxy、DynamicProxy)
代理及动态代理模式原创 2011-04-09 08:59:00 · 622 阅读 · 0 评论 -
观察者模式(ObServer)
观察者模式(ObServer) 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时, 所有依赖于它的对象都得到通知并被自动更新 /* * 观察者模式(Observer) * 观察者模式定义了一对多依赖关系,让多个观察者对象同时监听某一个主题对象。 * 让主题对象在状态发生变化时,会通知所有观察者对象,让他们能够自动更新自己。 * * 组成: * 一、抽象主题角色: * 把所有对观察者对象的引用保存在一个集合中,每个抽象主题角色都可以有任意数量观察原创 2011-04-08 11:17:00 · 576 阅读 · 0 评论 -
装饰模式(Decorator)
/* 装饰模式(Decorator) * 使用接口继承可以解决车子可以飞或者能游泳。但若增加一个既能飞又能游泳的,(飞、游泳已有,需要组合)则需要在多增加个接口功能。 * 装饰模式,可以把(飞、游泳已有,需要组合)功能叠加起来,而不需要重新多增加已有重复的功能。 * 组成: * 抽象组件角色: 一个抽象接口,是被装饰类和装饰类的父接口。 * 具体组件角色:为抽象组件的实现类。 * 抽象装饰角色:包含一个组件的引用,并定义了与抽象组件一致的接口。 * 具体装饰角色:为抽象装饰角色的原创 2011-04-11 11:03:00 · 600 阅读 · 0 评论