摘要: 代理模式:为其他对象提供一种代理,以控制对这个对象的访问代理顾名思义就是 不直接访问某个对象,而是通过一个中间代理 来访问这个对象比如A要给C送礼物,但是A不认识C,于是A通过B,请B转交礼物给C。那么在这个情景中B就是代理。A的真正访问都是通过B来体现的。而且B的操作必须是体现A的,不能有A不具体的操作,比如A通过B送礼物给C,那么B就不能又其他多余的操作,因为他只是A的代理,A不具体的操作,B肯定也不能具备。所以代理必须和真正的类具备同样的访问操作,图示:为了使代理类和真正的类具备同样的访问操作,因此必须提供的一个接口,让代理类和真正类都继承,这样就可以约束代理类和真正的类都有同样的访问操 阅读全文
posted @ 2010-06-29 22:23 音乐啤酒 阅读(268) 评论(0) 推荐(0)
摘要: 装饰模式,动态的给一个类东西添加新的职能,就增加新功能而言 要比生成子类更有效灵活装饰模式是一个类对象动态的添加某些新的职能,功能。是添加而不是覆盖,因此装饰模式有个特点就是每个装饰类必须先调用对象的原来的功能和职能,然后执行新添加的职能,这才叫装饰,从代码层次反应就是每次执行的时候都要调用基类的方法:Base.Method()----------个人理解装饰模式结构图:Componet是要装饰的对象抽象类Conretecomponent是对象抽象类的子类,如果要装饰的对象只有一个,那么就没必要有抽象类,直接又一个具体类就可以了Decorator是装饰抽象类,是用来装饰Componet类对象的 阅读全文
posted @ 2010-06-29 18:17 音乐啤酒 阅读(247) 评论(0) 推荐(0)