何为多态?

张开发
2026/4/6 11:17:02 15 分钟阅读

分享文章

何为多态?
多态的概念多态是面向对象编程的三大特性之一封装、继承、多态指同一操作作用于不同对象时会产生不同的行为。具体表现为父类引用指向子类对象并在运行时根据实际对象类型调用相应的方法。多态的好处提高代码扩展性通过多态新增子类时无需修改父类代码只需继承并重写方法即可符合开闭原则对扩展开放对修改封闭。增强灵活性父类引用可以动态绑定到不同子类对象实现运行时行为变化。简化代码逻辑统一通过父类接口处理不同子类对象减少条件分支语句。多态的要素继承子类必须继承父类建立层级关系。重写子类需重写父类的方法提供具体实现。父类引用指向子类对象通过父类类型变量引用子类实例触发动态绑定。代码示例分析原始分步写法Pig p new Pig(); // 创建子类对象 Animal an p; // 父类引用指向子类对象合并后的等价写法Animal an new Pig(); // 直接通过父类引用创建子类对象左侧编译期的类型右侧运行期的类型两种写法均满足多态条件Pig是Animal的子类。Pig重写了Animal的方法如makeSound()。运行时调用an.makeSound()会执行Pig类的方法。开闭原则的体现若需新增子类如Dog只需继承Animal并重写方法无需修改现有父类或调用方代码。例如Animal an new Dog(); // 扩展时无需改动原有逻辑

更多文章