Java面向对象--方法重写和多态

本文详细阐述了面向对象编程中的关键概念:方法重写、重载和多态。方法重写要求子类方法与父类方法有相同的名称、参数列表和返回类型,但不能扩大异常范围。重载则关注同名方法的不同参数列表。多态允许子类对象通过父类引用调用重写的方法,实现动态绑定。理解这些概念对于提升编程能力至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法重写

        规则: 1.子类继承父类的前提

                    2.方法名相同

                    3.参数列表相同

                    4.子类方法的返回值类型要与父类方法相同或者是其子类

                    5.访问修饰符不能比父类更严格

                    6.不能扩散异常(把父类方法抛出的异常增大)

                    7.静态方法不属于对象,因此不能被继承,想调用直接用类名.方法名()

                       静态方法不能与普通方法重名

重载和重写的区别:

重载涉及同一个类中的同名方法,要求方法名相同,参数列表不同,与返回值类型无关

重写涉及的是子类和父类之间的同名方法,要求方法名相同、参数列表相同、返回值类型相同

多态:子类对象引用父类类型

        1.父类中的方法被子类重写(前提)

        2.在别的类中,有一个参数为父类类型的方法,调用了被重写的父类方法

        3.调用时(传递实参时),实参是子类对象,那么就会调用该子类对象重写后的方法

类型转换

大类型接收小类型,默认转换成大类型

小类型接收大类型,强制转换成小类型(会丢失精度)

原则上类型要能转才允许转换,一般用instanceof关键字来判断

if(对象名 instance of 类型){                 //判断一个对象是否属于一个类

        子类型 新对象名=(子类型)对象名;

         //可以用新对象名来调用子类特有的方法

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值