面向对象-多态-2
//父类 动物
public class Animal {
public void eat(){
System.out.println("动物吃东西.");
}
}
//------------------
//子类 猫
public class Cat extends Animal {
@Override
public void eat() {
System.out.println("猫吃鱼.");
}
public void playGame(){//子类的独特方法
System.out.println("猫捉迷藏.");
}
}
//------------------
//测试类
public class AnimalDemo {
public static void main(String[] args) {
/*
向上转型: 从子到父
父类引用指向子类对象
向下转型: 从父到子
父类引用转为子类对象
*/
Animal a = new Cat(); //向上转型
a.eat();
// animal.playGame();不能用子类的特有方法.
Cat c = (Cat)a; //向下转型, 父类型强转成子类型
//不用再造对象的情况下, 可以调用子类的独特方法
c.playGame();
}
}
标签:playGame,子类,void,多态,Cat,面向对象,public
From: https://www.cnblogs.com/lg369/p/17071175.html