Java类方法重载与重写
@
- 方法重载
1.方法名相同
2.参数列表不同
public void person(double height,double weight){
}
public void person(String name,int age){
}
上面两个方法的方法名都为person,但是两者的形参都不同,这种就可以称为方法的重载。
3.参数列表(个数不同、类型顺序不同、类型不同)
public void person(int age,String name){
}
public void person(String name,int age){
}
上述方法,虽然形参相同,但是类型顺序不一样,其余两种情况同理可得,都属于方法的重载。
- 方法重写
- 方法名相同
- 参数列表相同
- 返回值只能是本类或者是其子类
方法重写只存在于继承关系中,只有子类才能重写父类中的方法。方法重写虽然不能修改参数列表,但是可以根据需求更改方法内容,实现比父类更强大功能。
class father{
public void work(){
}
}
class child extends father {
public void work(){
}
}
方法名 | 参数列表 | 返回值 | 访问修饰符 | 抛出异常 |
---|---|---|---|---|
方法重写 | 相同 | 只能是本类或者是其子类 | 不能比父类更严格 | 不能比父类更宽泛 |
方法重载 | 不相同 | 无关 | 无关 | 无关 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!