设计继承树1
以狮子、老虎、狗、猫、狼、河马为例设计继承树。步骤如下:
1、找出具有共同属性和行为的对象
这6种动物有什么共同点?这些类型有什么相关性? 这么问有助于执行后面几个步骤。
2、设计代表共同状态与行为的类
这些对象都是动物,因此我们可以用Animal作为共同父类的名称。
我们会把所有动物都需要的方法和实例变量加进去。
public class Animal { String name; //动物都有名称 String food; //动物所吃的食物 //现在只有meat(食肉)和grass(食草)两种值 int hunger; //代表饥饿程度的int值 //它会根据动物吃了多少东西而改变 void makeNoise() { }//动物发出声音的行为 void eat() { } //动物吃东西时的行为 void sleep() { } //动物睡觉时的行为 void roam() { } //不在进食或睡眠时的行为 }
用继承来防止子类中出现重复的程序代码。
3、首先我们先要确定子类是否需要让某项行为(也就是方法的实现)有特定不同的运作方式,在我们观察Animal这个类之后,我们认为eat()与makeNoise()应该由各个子类自行覆盖。到此类的继承结构已经大致成型。