随笔分类 -  设计模式

摘要:单例/单体模式(Singleton)(转自:http://www.cnblogs.com/snandy/archive/2011/04/07/2007717.html#)首先,单例模式是对象的创建模式之一,此外还包括工厂模式。单例模式的三个特点:1,该类只有一个实例2,该类自行创建该实例(在该类内部创建自身的实例对象)3,向整个系统公开这个实例接口Java中大概是这个样子class Singleton { //私有,静态的类自身实例 private static Singleton instance = new Singleton(); //私有的构造子(构造器,构造函数,构造方法) pr.. 阅读全文
posted @ 2012-12-18 10:49 xjx_user 阅读(171) 评论(0) 推荐(0)
摘要:适配器模式(Adapter) 转自(http://blog.csdn.net/kingliu_leo/article/details/5107373)概述: 在软件开发过程中,我们要经常要复用我们以前开发的一些“现存对象”,但是这些“现存对象”并不能满足我们新的应用环境。怎样才能良好的复用这些对象,以满足我们的应用环境,这就是适配器(Adapter)所要解决的问题。意图: 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 ——《设计模式》GOF 生活中的例子: 在现实生活中,像这种适配器我们... 阅读全文
posted @ 2012-11-30 16:52 xjx_user 阅读(162) 评论(0) 推荐(0)
摘要:介绍: 在软件系统中,我们有时候需要对对象的功能进行扩展,继承虽然能够解决此类问题,但是由于继承本身的一些缺点使得扩展不能动态的进行,并且面对功能扩展间的组合,使用继承会使得子类急剧膨胀。装饰模式正是用来解决这类问题的,对对象功能进行任意的扩展而不用担心类继承所带来的膨胀。现实中的例子: “疯狂坦克”,我想大家都玩过吧,每一关中都会随机爆出一些可吃的东西,譬如防护罩:坦克吃了,增强抗打能力;譬如子弹:坦克吃了,发射子弹的速度快了;譬如石墙:坦克吃了可以打碎石墙……解决方案: 如果叫我实现这些功能(防护罩:坦克吃了,增强抗打能力;譬如子弹:坦克吃了,发射子弹的速度快了;譬如石墙:坦克吃了可以打碎 阅读全文
posted @ 2012-11-30 16:41 xjx_user 阅读(244) 评论(0) 推荐(0)
摘要:观察者模式的结构转自(http://www.blogjava.net/supercrsky/articles/202544.html)简单地说,观察者模式定义了一个一对多的依赖关系,让一个或多个观察者对象监察一个主题对象。这样一个主题对象在状态上的变化能够通知所有的依赖于此对象的那些观察者对象,使这些观察者对象能够自动更新。 观察者模式的结构 观察者(Observer)模式是对象的行为型模式,又叫做发表-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-收听者(Source/Listener)模式或从属者(Dependents)模式。 本模式的类... 阅读全文
posted @ 2012-11-30 16:37 xjx_user 阅读(256) 评论(0) 推荐(0)
摘要:Java设计模式之代理模式(网址http://www.docin.com/p-28475578.html) 阅读全文
posted @ 2012-11-30 16:30 xjx_user 阅读(136) 评论(0) 推荐(0)
摘要:Java设计模式—迭代器(Iterator)转自(http://blog.163.com/nonoliuhao@126/blog/static/1716520942010101131346478/)1.Aggregate接口所声明的方法只有iterator方法一个,这是为了建立一个对对应聚合的 iteratorJava代码package com.pattern.iterator; publicinterface Aggregate { publicabstract Iterator iterator(); } package com.pattern.iterator;public inte.. 阅读全文
posted @ 2012-11-30 16:19 xjx_user 阅读(272) 评论(0) 推荐(0)