转型,
转型
class Animal {public void eat(){System.out.println("animal eatting...");}}class Bird extends Animal{public void eat(){System.out.println("bird eatting...");}public void fly(){System.out.println("bird flying...");}}public class TestZhuanXing {public static void main(String[] args) {Animal a = new Bird(); //向上转型a.eat(); //bird eatting...//! error: a.fly(); b虽指向子类对象,但此时丢失fly()方法Bird b = (Bird)a;b.fly();//bird flying...b.eat();//bird eatting...}}1要有继承
2要有重写
3父类引用指向子类对象