java基础知识

override(重写)和overload(重载) 区别

override(重写)和overload(重载) 是面向对象编程中两个重要的概念,它们的主要区别:

概念定义
override子类重新实现父类中已有的方法(方法签名完全相同)
overload在同一个类中创建多个同名方法,但这些方法的参数列表不同(参数类型、数量或顺序不同)

关键区别:

比较纬度override(重写)overload(重载)
作用范围发生在继承关系的父子类之间发生在同一个类内部
方法签名必须完全相同(方法名+参数列表)仅方法名相同,参数列表不同
返回类型必须相同或是父类方法返回类型的子类型可以不同
访问修饰符不能比父类方法更严苛(可以更宽松)(public>protected>default>private)可以任意修改
异常抛出不能抛出比父类方法更多或更宽泛的检查异常可以抛出不同的异常
静态性不能重写static方法(只能隐藏)可以重载static方法
注解要求java使用@Override注解,kotlin使用override关键字不需要特殊注解
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值