Java教程

java中overload(重载)和override(重写)的区别

本文主要是介绍java中overload(重载)和override(重写)的区别,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

overload:

1.overload(重载)表示同一个类中可以有多个名称相同的方法,但是这些方法的参数列表各不相同(即不同的参数类型,不同的参数个数,不同的参数顺序,)。overload可以改变返回值类型。

2.重载是一个类中多态性的一种表现。

3.重载的特点:

第一:不能通过访问权限,返回类型,抛出的异常进行重载;
第二:方法的异常类型和数目不会对重载造成影响的;
第三:对于继承来说,如果某一个方法在父类中的修饰符是private,那么就不能在子类对其进行重载了。如果要定义的话,也只是定义了一个新方法。

override

1.override(重写)是父类与子类之间多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写了。子类的对象(实例)使用了这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被屏蔽了。

2.override(重写)的特点:
第一:覆盖的方法的返回值必须和被覆盖的方法返回一致;
第二:覆盖的方法抛出的异常必须和被覆盖方法的所抛出的异常一致,或者是其子类。
第三:被覆盖的方法不能被定义为private。否则在其子类中只是新定义了一个方法,并没有对其进行覆盖。

简单记忆:

重载:名称相同,参数不同

重写:名称相同,参数相同

这篇关于java中overload(重载)和override(重写)的区别的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!