重载(Overload)和重写(Override)的区别是什么?

Posted ffdsj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了重载(Overload)和重写(Override)的区别是什么?相关的知识,希望对你有一定的参考价值。

  首先java程序的运行分为编译和运行两部分。

  所以重载和重写在这一点就有很明显的区别,因为重写方法的方法名和参数个数类型都一样,所以在java虚拟机的编译阶段是识别不出重写的方法的不同,在运行期间才可以看出不同点。而重载在编译过程就已经暴露了他的不同点,虽然方法名相同,但是参数个数类型都不同。简单的说,就是编译器一个可以区分不同,一个不可以区分不同。

  同样java多态针对的是重写,而不是重载,就像射箭一样,重写是在一个弓上射了一个箭,这个箭是可以变化的,重载实在一个弓上射很多只箭。

以上是关于重载(Overload)和重写(Override)的区别是什么?的主要内容,如果未能解决你的问题,请参考以下文章

Java中重载(Overload)和重写(Override)的定义

重载(Overload)和重写(Override)

简述override和overload的区别

Java 重写(Override)与重载(Overload)

请问重载overload,覆盖override,重写overwrite,这三者之间有啥区别呢?

重载(overload)和重写(override)的区别Java面试题