package com.up;
public class Cat extends Animal{
public void eat(){
System.out.println("吃鱼");
}
public void work(){
System.out.println("抓老鼠");
}
}
package com.up;
public class Animal {
public void eat(){
System.out.println("Animal eat");
}
}
package com.up;
public class Main002 {
public static void main(String[] args) {
//Animal没有多态的性质向下转型失败
// Animal animal = new Animal();
// Cat cat = (Cat)animal;
//向上转型,Animal具有多态性质 (子类对象转为父类对象)
Animal animal = new Cat();
//错误情况
//Cat cat = new Animal();
//调用的是Cat的eat方法
animal.eat();
//向下转型 (父类对象转为子类对象)
Cat cat = (Cat)animal;
cat.work();
}
}
灵魂画手