重载和重写的区别@TOC
重写和重载有区别么?有什么区别?
重写和重载在中文以及英文上都非常的相似,今天我们就来说一下他们两个的具体的区别。
*重载(Overload)
方法名称相同, 参数类型或参数长度,类型顺序不同, 可以完成方法的重载 ! 方法的重载与返回值无关!
*重写(Override)
方法重写要求:返回值类型相同或者的父类返回值类型的子类类型,方法名称相同
重写的规则:
修饰符 返回类型 方法名(参数){
}
1、发生的位置:
重载:一个类中
重写:子父类中
2、参实列表限制
重载:必须不同的
重写:必须相同的
3、返回值类型
重载:与返回值类型无关
重写:返回值类型必须一致
4、访问权限
重载:与访问权限无关
重写:子的方法权限,必须不能小于其父类的方法权限
5、异常处理
重载:与异常无关
重写:一场范围可以小,但是不能抛出新的异常。