多态
1. 什么是多态?为什么要使用多态?
简单来说是多种形态,具体来说是去完成某个事情,当不同对象去完成同一件事表现出来的不同结果/状态。
打个比方就是同一个人对待不同人表现出来的形态是不同的。
2. 多态实现的三个条件
- 继承
- 重写
- 父类引用指向子类对象
向上转型和向下转型
向上转型和重写
- 将子类对象给父类类型的引用 父类类型 对象名 = new 子类类型()
直接赋值的示例:
class Animal {
public String name;
public int age;
public Animal(String name, int age) {
this.name = name;
this.age = age;
}
// 父类中的 this 是当前对象的引用
public void eat() {
System.out.println(this.name + " ");
}
}
class Dog extends Animal {
public Dog(String name, int age) {
super(name, age);
}
public void back() {
System.out.println(this.name + "汪汪汪 ");
}
}
public class Test {
public static {
(, );
animal.eat();
}
}


