多态
多态是指:执行同一个方法却产生不同的行为。 多态的前提是继承和方法重写。 多态:执行哪个方法看的是引用的
对象的类型,而不是变量的类型。
package demo;
class Animal{
public void bark(){
System.out.println("不知道");
}
}
class Dog extends Animal{
public void bark(){
System.out.println("汪汪汪");
}
}
class Cat extends Animal{
public void bark(){
System.out.println("喵喵喵");
}
}
public class Demo01 {
public static void main(String[] args) {
//调用变量引用的对象的类型中方法
//运行时调用哪个方法,要看其引用的对象的类型
Animal a1 = new Animal();
a1.bark();
Animal a2 = new Dog();
a2.bark();
Animal a3 = new Cat();
a3.bark();
Animal[] arr = {new Animal(), new Dog(), new Cat()};
arr[0].bark();
arr[1].bark();
arr[2].bark();
}
}
package demo;
class Animal{
public void bark(){
System.out.println("不知道");
}
}
class Dog extends Animal{
public void bark(){
System.out.println("汪汪汪");
}
public void run(){
System.out.println("run");
}
}
class Cat extends Animal{
publ