Java面向对象——多态

本文深入探讨了多态在面向对象编程中的概念,包括如何通过继承实现多态,以及向上转型和向下转型的区别。多态允许通过父类引用调用子类方法,增强了代码的灵活性和可扩展性。`instanceof`关键字用于判断对象的实际类型,确保安全的类型转换。在实际编程中,多态常通过父类参数和返回值来体现。
摘要由CSDN通过智能技术生成

什么是多态:
多态(polymorphism)是具有表现多种形态的能力的特征。更专业化的说法:同一个实现接口,使用不同的实例而执行不同的操作。通过多态可以减少类中的代码量。可以提高代码的可扩展和可维护性。继承是多态的基础,没有继承就没有多态。

向上转型 :父类  类名 = new 子类

把子类转为父类,自动进行类型转换

通过父类引用变量调用的方法是子类覆盖或继承父类的方法,父类引用变量无法调用子类特有的方法

向下转型 :子类  类名 = (子类)父类

把父类转为子类,必须进行强转

可以访问子类特有的方法。必须转为父类指向的真实子类。否则将出现类型转换异常ClassCastException

instanceof

类型转换用 instanceof【到实例】判断是否是正确的类型

判断父类具

体指向那个子类的实例

instanceof通常和强制类型转换结合使用。先进行判断在进行相应的强转。

使用将父类做为方法的形参和使用父类作为返回值是使用多态的常用方式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值