Head First C# 中文版 图文皆译 第六章 继承 page246

来源:互联网 发布:渗透测试软件 编辑:程序博客网 时间:2024/06/07 19:24

还没完工!蜂后需要知道蜂窝内的蜂蜜消耗量。你可以在这儿好好地试用一下你学到的继承技术!

蜂后的会计告诉她蜂蜜的产量不足。蜂后需要知道蜂蜜消耗量,才可以决定是否让工蜂由保护卵转去生产蜂蜜。

*密封都需要吃蜂蜜。所以它们需要生产更多的蜂蜜。

*工蜂工作的时候消耗的蜂蜜比较多。倒数第一班次消耗10个单位的蜂蜜,倒数第二个班次消耗11个单位,以此类推。所以用ShiftLeft加上9就可以知道该班次需要多少蜂蜜。

*蜜蜂不工作的时候消耗7.5单位的蜂蜜。

*上面只是普通的情况。如果一只蜜蜂体重超过100毫克,消耗的蜂蜜多35%,蜂后也是如此。

*蜂后消耗很多蜂蜜。蜂后监工蜜蜂们工作的时候很劳累,所以也需要更多的蜂蜜。她消耗的蜂蜜和剩余班次最多的蜜蜂一样多。

*蜂后需要向班次报告中添加蜂蜜消耗量。

创建一个Bee类来掌管蜂蜜计算。

蜂后和工蜂消耗蜂蜜的方式一样,所以让它们继承自Bee可以防止代码冗余。蜜蜂需要知道自己的体重(这样才可以知道是否需要给消耗量添加35%)。

*创建一个GetHoneyConsumption()方法,它计算工蜂消耗量。由于蜂后需要做额外的计算,所以工蜂继承这个方法,蜂后覆写这个方法。

*GetHoneyConsumption()方法需要知道剩余的班次。

*计算蜂蜜消耗量需要知道密封的体重,所以Bee的构造方法需要接受一个代表体重的参数,并把它存储在一个字段里。而由于其他类并不需要访问它,所以可以把它声明为私有变量。

原创粉丝点击