学习目标:
多态
学习内容:
class Animal{
public void move(){
System.out.println("动物可以移动");
}
}
class Dog extends Animal{
public void move(){
System.out.println("狗可以跑和走");
}
public void bark(){
System.out.println("狗可以吠叫");
}
}
public class TestDog{
public static void main(String args[]){
Animal a = new Animal(); // Animal 对象
Animal b = new Dog(); // Dog 对象
a.move();// 执行 Animal 类的方法
b.move();//执行 Dog 类的方法
b.bark();
}
}

该程序将抛出一个编译错误,因为b的引用类型Animal没有bark方法。
在多态中,编译看左边,运行看右边(即具体执行逻辑).
本文通过实例解析了Java中的多态概念,展示了如何通过Animal和Dog类的实例,演示了编译时看类型,运行时看实际对象的方法调用。重点讲解了Dog类的bark方法在Animal对象上无法直接调用的原理。
6215

被折叠的 条评论
为什么被折叠?



