2008年9月16日
摘要: 模板方法模式是把不变行为搬到超类,从而去除子类的重复代码。至于需要变动的行为,通过多态,在子类中覆盖掉超类的同名方法。这种方法其实是最常用的oo方法,我们经常会这样来设计超类和子类。问题是,我们在前面讲过,子类必须能完全代替父类,要倒转依赖。如果在子类中重载超类同名方法,不是违背了这个原则吗?... 阅读全文
posted @ 2008-09-16 16:11 真阿当 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 模板方法模式是把不变行为搬到超类,从而去除子类的重复代码。至于需要变动的行为,通过多态,在子类中覆盖掉超类的同名方法。这种方法其实是最常用的oo方法,我们经常会这样来设计超类和子类。问题是,我们在前面讲过,子类必须能完全代替父类,要倒转依赖。如果在子类中重载超类同名方法,不是违背了这个原则吗?... 阅读全文
posted @ 2008-09-16 16:11 真阿当 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 代理模式在实现上就是定义一个接口,实体和代理都实现这个接口,然后在代理的构造函数中实例化一个实体的对象,在代理类的方法中调用实体的同名方法。 阅读全文
posted @ 2008-09-16 11:31 真阿当 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 代理模式在实现上就是定义一个接口,实体和代理都实现这个接口,然后在代理的构造函数中实例化一个实体的对象,在代理类的方法中调用实体的同名方法。 阅读全文
posted @ 2008-09-16 11:31 真阿当 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 装饰者模式适用于往对象上动态地添加方法和属性,当方法和属性花样很多,又需要根据实际情况动态地修改的时候,可以选用这种模式。具体实现方法其实和attatchOnload的思想一样,模式类里需要接收一个参数,这个参数是添加这个类之前的对象,先调用参数对象中的方法,然后在后面添加这个类里的新方法。fun... 阅读全文
posted @ 2008-09-16 11:17 真阿当 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 装饰者模式适用于往对象上动态地添加方法和属性,当方法和属性花样很多,又需要根据实际情况动态地修改的时候,可以选用这种模式。具体实现方法其实和attatchOnload的思想一样,模式类里需要接收一个参数,这个参数是添加这个类之前的对象,先调用参数对象中的方法,然后在后面添加这个类里的新方法。fun... 阅读全文
posted @ 2008-09-16 11:17 真阿当 阅读(86) 评论(0) 推荐(0) 编辑