当前位置:首页 >  科技百科

方法重写与重载的区别

时间:2025-04-23 05:00:59

科技百科

导读:方法重写与方法重载有什么区别?  方法重写与方法重载的区别主要表现在以下几个方面: 1. 方法重载是在同一个类中,两个方法的方法名相同,但参数列表不同(参数......

方法重写与方法重载有什么区别? 

方法重写与方法重载的区别主要表现在以下几个方面:

1. 方法重载是在同一个类中,两个方法的方法名相同,但参数列表不同(参数类型、顺序、个数)。重载是编译时多态,调用时不能指定类型信息,所以编译器不知道要调用的是哪个方法。重载的返回值类型可以相同也可以不同,但不能根据返回值类型区分是否是重载。

2. 方法重写发生在父类和子类之间,子类继承父类方法(非构造、final、static修饰的方法)并重写父类方法。重写方法的参数列表、返回值类型必须和父类被重写的方法保持一致,重写方法的访问权限不能低于父类被重写的方法。当子类重写了父类的方法后,调用该方法时会优先调用子类的实现,即重写是运行时多态。

3. 重写要注意权限的问题,子类中的权限不能小于父类的权限,当父类的权限为private时,子类无法继承,也就无法产生所谓的重写。子类抛出的异常不能超过父类相应方法抛出的异常。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!

新视点数码百科版权所有,广州云媒派信息技术有限公司 版权所有 粤ICP备2021127029号