2014年9月7日

摘要: 状态模式是针对系统的状态转换的,其主要的定义如下:状态模式:允许对象在内部状态改变时改变他的行为,对象看起来好像修改了它的类。为了方便状态转移 我们为状态定义一个通用的接口,然后每一种状态都实现这个接口,而在系统类中,通过构造函数,将系统本身传入状态类中,这样,每一种状态的改变,都可以在自己类的内部... 阅读全文
posted @ 2014-09-07 21:18 XtestW 阅读(150) 评论(0) 推荐(0) 编辑

2014年9月6日

摘要: 1.迭代器模式完成的功能是和迭代器一样的,封装了对对象的顺序遍历,因为子类的对象集合的存储方式可能并不一致。但是存储的对象是一致的。public classItem{ .....//各种属性}public class Set1{ item[] items; ... publi... 阅读全文
posted @ 2014-09-06 12:52 XtestW 阅读(248) 评论(0) 推荐(0) 编辑

2014年9月5日

摘要: 前面学习过了策略模式,策略模式是对一类的算法进行封装,利用组合,算法之间可以互相替换,但是这个是针对算法过程不是一样的算法。但是如果一系列的算法的步骤都是一样的,且算法的很多过程都是一样的处理,那么,用策略模式的话,会导致算法的重用不高,我们采用模板方法来实现:模板方法模式:在一个方法中定义一个算法... 阅读全文
posted @ 2014-09-05 11:36 XtestW 阅读(157) 评论(0) 推荐(0) 编辑

2014年9月4日

摘要: 1.适配器模式适配器模式是针对接口不一时处理的情况,比如我的类的参数是IInterface1,但是我现在想要调用IInterface2接口的函数,怎么办呢?就是用适配器来解决这个问题:public interface IInterface1(){ public void method1();}... 阅读全文
posted @ 2014-09-04 13:46 XtestW 阅读(240) 评论(0) 推荐(0) 编辑

2014年9月3日

摘要: 命令模式这个设计模式更像是对接口编程的一种应用,比如给小朋友穿衣服,但是不一样的衣服有不一样的穿法,裤子,衬衫,鞋,T恤都是不一样的,但是小朋友不知道怎么穿,只知道想穿什么,那么怎么办呢,小朋友会让他的妈妈帮他穿,这里面的“让妈妈帮忙”,就是给妈妈一个命令(虽然不是很恰当- -!),对小朋友而言,怎... 阅读全文
posted @ 2014-09-03 13:26 XtestW 阅读(190) 评论(0) 推荐(0) 编辑

2014年9月2日

摘要: 工程中,某些对象我们只需要一个,比如线程池,缓存,对话框等的对象,我们通常的做法是可以定一个全局静态变量,然后通过程序初始化的时候就实例化他们,然后直接调用这个全局变量,但是这样有个问题,如果我的这个对象消耗的资源很多,而有的时候,我的程序在运行过程中又没用到这个对象,岂不是浪费了很多资源。通常的做... 阅读全文
posted @ 2014-09-02 14:42 XtestW 阅读(113) 评论(0) 推荐(0) 编辑

2014年9月1日

摘要: 在面向对象的编程中,我们常常会用到new这个关键字,同时,面向对象可以实现多态,这样的话,我们常常就会用父类或者接口定义一个变量,在用到这个变量的时候,再new一个具体的对象,但是有的时候,这个new的对象不是确定的,可能是要根据不同的场景,new出不同的子类,这个很简单的就可以通过if 或者swi... 阅读全文
posted @ 2014-09-01 12:12 XtestW 阅读(121) 评论(0) 推荐(0) 编辑

2014年8月31日

摘要: 这一章看完之后,我感觉,装饰者模式就是对类继承的一种递归调用式的组合应用,很好的是实现了开闭原则,可以有效的扩展应用程序。比如书中的例子,有几种饮料,每种饮料的价格已经知道了,但是我们又有很多种的调料,每种调料也有它的价格,我们现在需要是在饮料中加调料,那么这样一来,饮料的售价就会变化,如何来描述... 阅读全文
posted @ 2014-08-31 13:57 XtestW 阅读(241) 评论(0) 推荐(0) 编辑

2014年8月30日

摘要: 在项目设计阶段,处理一对多的依赖关系类的时候,我们需要降低代码的耦合性从而增强可扩展性,比如一个班级,班主任老师和学生的关系,对于学校的通知,必定不会是学生没事的时候就问一下班主任”学校有通知没啊?”(铁定会把班主任搞毛的),明智的做法则是等着班主任在班级里面通知(对于学校的通知,班主任不会不通知... 阅读全文
posted @ 2014-08-30 12:20 XtestW 阅读(181) 评论(0) 推荐(0) 编辑

2014年8月29日

摘要: 在实际开发过程中,经常会发生这样的一件事,我们需要实现一系列的功能,这些功能在逻辑上是可以抽象成一样的方法,不同的实现,也就是多态,有一种解决方法是,设计一个基类,然后我们定义一些方法,然后继承这个类,设计不同的子类,不同的实现,这样子我们就可以定义基类来调用子类的方法,实现多态,这种方法一定程度... 阅读全文
posted @ 2014-08-29 12:04 XtestW 阅读(117) 评论(0) 推荐(0) 编辑

导航