一、定义
多态:多态是同一个行为具有多个不同表现形式或形态的能力。
书写形式:使用父类变量引用子类对象。假设我们现在有一个Person类,它有两个子类 Student类和Teacher类,那么我们可以通过以下形式进行实例化:
Person p1 = new Student();
Person p2 = new Teacher();
在java程序语言中,对象变量是多态的。父类变量既可以引用一个父类对象,也可以引用它的任何一个子类的对象。(注意:父类变量可以引用子类对象,但是不能将一个父类的引用赋给子类变量)
二、多态的必要条件
- 必须有继承关系
- 重写
- 父类变量引用子类对象
三、多态的优点
- 消除了类型之间的耦合关系
- 可替换性
- 灵活性
- 接口性
- 简化性
- 可扩充性