子类在继承父类的情况下.
多态的好处:
没有使用多态:
这种方法定义饲养员喂养动物,需要编写不同的feed方法.然后通过feed方法的参数列表来判断是Dog还是Cat.
使用多态:
写一个喂养所有动物的类.
feed(Animal a) {System.out.println("feeding") ; a.eat(); }
在feed的参数列表改为Animal.因为Animal为所有动物类型的父类. Animal和Dog,Cat存在多态的关系.
在将d类型传入feed(Animal a)中实际等价于 Animal a = new Dod();
多态时方法的调用问题:
←以为是static和对象没有关系
SuperClass(编译类型) clz = new (运行类型)SubClass();