一.多态的概念:
1️⃣定义:父类引用指向子类对象,调用同一个方法,执行子类自己的逻辑。
2️⃣核心三条件
继承关系,方法重写,父类引用指向子类。
3️⃣通俗例子:动物都会叫,猫喵喵叫、狗汪汪叫,同一个叫动作,形态不一样,就是多态。
二.代码解释:
//父类 class Animal{ public void shout(){ System.out.println("动物发出叫声:"); } } //子类 class Cat extends Animal{ @Override public void shout(){ System.out.println("小猫喵喵喵"); }} //子类 class Dog extends Animal{ @Override public void shout(){ System.out.println("小狗汪汪汪"); }} //测试 public class Test{ public static void main(String[] args){ Animal f1=new Cat(); Animal f2=new Dog(); f1.shout(); f2.shout(); }}
三.总结
1️⃣多态的优点:
代码复用:共用父类代码,减少重复编写
扩展性强:新增子类无需改动原有代码
简化调用:统一父类方法调用,不用区分子类类型
耦合度低:父子类相互独立,维护更轻松
2️⃣多态的缺点:
无法直接调用子类独有方法
运行时绑定,执行效率略降
代码逻辑变抽象,新手不易理解