设计模式
摘要:设计原则:找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起!! 策略模式:观察模式:装饰模式:简单工厂: 工厂 :定义一个创建对象的接口,由子类决定要实例化的类是哪一个单件模式:单例模式有就用,没有就创建一个命令模式:将“请求”封装成对象,以便使用不同的请求、队列或者日
阅读全文
posted @
2017-02-08 10:11
路过的二师兄
阅读(86)
推荐(0)
线程安全的单例模式的几种实现方法分享
摘要:线程安全的单例模式实现有几种思路,个人认为第2种方案最优雅:、饿汉式、借助内部类、普通加锁解决、双重检测,但要注意写法,如果单体模式继续扩展为N元单体模式,那就是对象池模式了1、饿汉式单例复制代码代码如下:public class Singleton { private final static S...
阅读全文
posted @
2016-01-23 13:59
路过的二师兄
阅读(199)
推荐(0)
外观模式Facade
摘要:class wheel{}class engine{}class bodywork{}public class TankFacade{wheel[] wheels = new wheel[4];engine e = new engine();bodywork b = new bodywork();p...
阅读全文
posted @
2014-07-07 09:23
路过的二师兄
阅读(110)
推荐(0)
装饰模式(Decorator)
摘要:动态地给一个对象增加一些额外的职责。就增加功能而言,Decorator模式比生成子类更为灵活。public class Tank{public abstract void Shot();public abstract void Run();}public class T50 extends Tank...
阅读全文
posted @
2014-06-30 20:39
路过的二师兄
阅读(114)
推荐(0)
组合模式Composite
摘要:客户代码过多地依赖于对象容器复杂的内部实现结构,对象容器内部实现结构(而非抽象接口)的变化将引起客户代码的频繁变化,带来了代码的维护性、扩展性等弊端。将对象组合成树形结构以表示部分-整体的层次结构。composite使得用户对单个对象和组合对象的使用具有一致性。public interface IB...
阅读全文
posted @
2014-06-23 11:10
路过的二师兄
阅读(145)
推荐(0)
桥接模式Bridge
摘要:坦克游戏:坦克有T50 T75 T90 坦克游戏还可以在不同的平台上运行 如 PC。手机等事实上由于Tank类型的固有逻辑,使得Tank类型具有了两个变化的维度 一个是变化的维度为平台的变化 另一个是维度 为 型号的变化将抽象部分与实现部分分离,是他们都可以独立地变化。将一个事件中多个维度的变...
阅读全文
posted @
2014-06-21 20:53
路过的二师兄
阅读(101)
推荐(0)
Adapter适配器模式
摘要:在软件系统中,由于应用环境的变化,常常需要将“一些现存的对象”放在新的环境中应用,但是新环境要求的接口是这些现存对象所不满足的。将一个类的接口转换成客户希望的另一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。对象适配器interface IStack 客户期望...
阅读全文
posted @
2014-06-20 19:58
路过的二师兄
阅读(213)
推荐(0)