开发者社区> 问答> 正文

Java里面重载和重写有什么区别啊?

Java里面重载和重写有什么区别啊?怎么老是记不住?

展开
收起
蛮大人123 2016-02-26 14:39:38 2880 0
3 条回答
写回答
取消 提交回答
  • 两者的相同点:方法名相同 不同点: 1、重写发生在子类和父类的继承关系中,同一个类没有重写的概念,只能是子类重写父类方法。 2、重写的方法签名完全相同(方法签名指的是入参,返回值,方法名),而重载的方法签名是不完全相同的,最常见的重载是方法名相同但是入参不同。比如getUser(Long userId)和getUser(String userName),通过不同的入参来获取用户,这就是方法重载。
    2019-07-17 18:48:15
    赞同 展开评论 打赏
  • 重载是父类和子类之间的关系,子类重载父类的方法,可以提供子类定制的实现。重写是对于同一个类或者接口里面的两个方法,方法名称一致但是参数类型不同,是为了简化调用者的负担。用不同参数调用就可实现不同功能,不用记忆不同的方法名。

    2019-07-17 18:48:14
    赞同 展开评论 打赏
  • 我说我不帅他们就打我,还说我虚伪

    重写多态性起作用,对调用被重载过的方法可以大大减少代码的输入量,同一个方法名只要往里面传递不同的参数就可以拥有不同的功能或返回值。
    用好重写和重载可以设计一个结构清晰而简洁的类,可以说重写和重载在编写代码过程中的作用非同一般.

    2019-07-17 18:48:14
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载