java重写Override 重载Overload

作者:@kuaiquxie
作者的github:https://github.com/bitebita
本文为作者原创,如需转载,请注明出处:https://www.cnblogs.com/dzwj/p/15377500.html


 

java重写Override 重载Overload

重写是子类对父类的允许访问的方法的实现过程进行重新编写,返回值和形参都不能改变。即外壳不变,核心重写

 

重写规则:

参数列表与被重写方法的参数列表必须完全相同

返回类型与被重写方法的返回类型可以不相同,但是必须是父类返回值的派生类

访问权限不能比父类中被重写的方法的访问权限更低  访问权限:public > protected > private

父类的成员方法只能被它的子类重写

声明为final的方法不能被重写

声明为static的方法不能被重写,但是能够被再次声明

子类和父类在同一个包中,那么子类可以重写父类所有方法,除了声明为private和final的方法

子类和父类不在同一个包中,那么子类只能够重写父类的声明为public和protected 的非final方法

重写的方法能够抛出任何非强制异常,无论被重写的方法是否抛出异常。但是,重写的方法不能抛出新的强制性异常,或者比被重写方法声明的更广泛的强制性异常,反之则可以

构造方法不能被重写

如果不能继承—个类,则不能重写该类的方法

 

super关键字

子类中调用父类的被重写方法需要使用

 

 

Overload

重载是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同

每个重载的方法(或者构造函数)都必须有一个独—无二的参数类型列表

重载规则:

被重载的方法必须改变参数列表(参数个数或类型不—样)

被重载的方法可以改变返回类型

被重载的方法可以改变访问修饰符

被重载的方法可以声明新的或更广的检查异常;方法能够在同—个类中或者在一个子类中被重载。无法以返回值类型作为重载函数的区分标准

 

重写是父类与子类的多态体现,重载是多态的体现

 

posted @   kuaiquxie  阅读(24)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示