java中overload(重载)和override(重写)的区别
作者:互联网
overload:
1.overload(重载)表示同一个类中可以有多个名称相同的方法,但是这些方法的参数列表各不相同(即不同的参数类型,不同的参数个数,不同的参数顺序,)。overload可以改变返回值类型。
2.重载是一个类中多态性的一种表现。
3.重载的特点:
第一:不能通过访问权限,返回类型,抛出的异常进行重载;
第二:方法的异常类型和数目不会对重载造成影响的;
第三:对于继承来说,如果某一个方法在父类中的修饰符是private,那么就不能在子类对其进行重载了。如果要定义的话,也只是定义了一个新方法。
override
1.override(重写)是父类与子类之间多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写了。子类的对象(实例)使用了这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被屏蔽了。
2.override(重写)的特点:
第一:覆盖的方法的返回值必须和被覆盖的方法返回一致;
第二:覆盖的方法抛出的异常必须和被覆盖方法的所抛出的异常一致,或者是其子类。
第三:被覆盖的方法不能被定义为private。否则在其子类中只是新定义了一个方法,并没有对其进行覆盖。
简单记忆:
重载:名称相同,参数不同
重写:名称相同,参数相同
标签:java,定义,子类,overload,重载,参数,override,重写,方法 来源: https://www.cnblogs.com/fuhui123/p/15907509.html