博客统计信息

用户名:luckylouis
文章数:3
评论数:2
访问量:915
无忧币:20
博客积分:90
博客等级:1
注册日期:2011-09-26

我最近发表的评论

背景问题:假设我们现在接到一个来自气象台的软件开发合约,对方希望我们开发一个天气预报类的软件。假设需要建立三种布告板,分别显示目前的状况,气象统计及简单的预报。当气象台提供的WeatherObject对象获得最新的测量数据时,三种布告板必须实时更新。如气象台所说,他们的WeatherData源文件中有getTemperature( ),getHumidity( ),getPressure( ),measurementsChanged( )。对于前三个方法各自返回最近的气象测量数据,我们不用在乎这些方法如何设置变量,WeatherData对象自己知道如何从气象台获取更新。而最后一个方法作为一个线索..
类别:未分类|阅读(287)|回复(1)|(2)阅读全文>>
这篇博文是对前一篇博文《设计模式1:找出应用中可能需要变化之处,把它们独立出来》的一个延伸思考:在鸭子里建立了一堆动态的功能没有用到,太可惜了!假设我们想在鸭子子类中通过“设定方法(setter method)”来设定鸭子的行为,而不是在鸭子的构造器内实例化,那应该如何操作呢?
1.首先我们要在Duck类中加入两个新的方法:
Duck类(Duck.java)(粗体为新加入的两个方法)
public abstract class Duck {     FlyBehavior flyBehavior;     Q..
类别:未分类|阅读(21)|回复(0)|(2)阅读全文>>
前景问题:

有时,想着只需要在基类中加上自己所需要的方法,所有子类就会继承该方法。但是对代码所做的局部修改,影响层面可能不是局部。你会体会到一件事:当涉及“维护”时,为了“复用”(reuse)目的而使用继承,结局并不完美。
这时,你会考虑:利用接口如何?把自己想要添加的方法从超类中取出来,放进一个“XXXable接口”中。这么一来,只有想要实现该方法的子类才实现该接口。这样如何?这真是个超笨的注意!你没有发现这么一来重复的代码会变多吗?这其实和使用继承时无止境的覆..
类别:未分类|阅读(175)|回复(1)|(2)阅读全文>>

订阅我的博客


google reader 鲜果 QQ邮箱 有道 抓虾

我的技术圈(1)

更多>>