重载(Overload)和重写(Override)的区别是什么?
Posted ffdsj
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了重载(Overload)和重写(Override)的区别是什么?相关的知识,希望对你有一定的参考价值。
首先java程序的运行分为编译和运行两部分。
所以重载和重写在这一点就有很明显的区别,因为重写方法的方法名和参数个数类型都一样,所以在java虚拟机的编译阶段是识别不出重写的方法的不同,在运行期间才可以看出不同点。而重载在编译过程就已经暴露了他的不同点,虽然方法名相同,但是参数个数类型都不同。简单的说,就是编译器一个可以区分不同,一个不可以区分不同。
同样java多态针对的是重写,而不是重载,就像射箭一样,重写是在一个弓上射了一个箭,这个箭是可以变化的,重载实在一个弓上射很多只箭。
以上是关于重载(Overload)和重写(Override)的区别是什么?的主要内容,如果未能解决你的问题,请参考以下文章
Java中重载(Overload)和重写(Override)的定义
Java 重写(Override)与重载(Overload)