阅读 99

重载java,java重写和重载的区别

过载和重写的区别是什么?

的重载和重写都是实现多态性的方式,区别在于前者实现编译时的多态性,后者实现运行时的多态性。

重载发生在一个类中,如果同名方法具有不同的参数列表(类型、数量和顺序),则视为重载。

重写发生在子类和父类之间。 在重写中,子类重写后的方法与父类重写的方法具有相同的返回类型,比父类重写的方法更容易访问,并且不能声明比父类重写的方法更多的异常(理查德置换原则)。 过载对返回类型没有特殊要求。

方法重载规则:

方法名称匹配,参数列表中参数的顺序、类型和个数不同。

重载存在于父类、子类和类中,与方法的返回值无关。

可以抛出不同的异常,并且可以具有不同的修饰符。

方法重写规则:

参数列表、方法名称和返回类型必须完全匹配;

结构方法不可改写;

无法重写声明为final的方法

声明为static的方法中不存在重写(只有重写和多态性联合才有意义);

权限不能低于父类。

重写后的方法不能抛出更宽的异常;

免费领取Java大厂商面试试题https://blog.csdn.net/kaikeba/article/details/111594371


文章分类
代码人生
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐