开发者社区> 问答> 正文

在Java中,方法重写与重载的区别是?

在Java中,方法重写与重载的区别是?

展开
收起
云上静思 2021-10-20 15:57:36 591 0
1 条回答
写回答
取消 提交回答
  • 关于重载和重写,你应该知道以下几点:

    1、重载是一个编译期概念、重写是一个运行期间概念。

    2、重载遵循所谓“编译期绑定”,即在编译时根据参数变量的类型判断应该调用哪个方法。

    3、重写遵循所谓“运行期绑定”,即在运行的时候,根据引用变量所指向的实际对象的类型来调用方法。

    4、因为在编译期已经确定调用哪个方法,所以重载并不是多态。而重写是多态。重载只是一种语言特性,是一种语法规则,与多态无关,与面向对象也无关。(注:严格来说,重载是编译时多态,即静态多态。但是,Java 中提到的多态,在不特别说明的情况下都指动态多态)。

    资料来源:《Java工程师成神之路(基础篇)》,链接:https://developer.aliyun.com/topic/download?id=923

    2021-10-20 15:59:05
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
阿里云开发者社区官方技术圈,用户产品功能发布、用户反馈收集等。
问答排行榜
最热
最新

相关电子书

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