微信二维码
微博二维码
qq号二维码

解释Java中的重写与重载

王伟平 2020-09-18 JAVA 141人浏览

Overload和Override的区别是什么? Overloaded的方法是否可以改变返回值的类型?

6个回答
胡寒

Overload是方法重载,类中多个方法同名,参数类型或参数个数不同.是一个类中多态的表现

Override是方法重写,子类继承父类后,可以通过重写父类中的方法,覆盖这个父类的方法.调用的时候会调用子类子类重写的方法.是父子类直接多态的表现

overloaded方法可以改变返回值的类型,但是不可以通过判断返回值类型是否相同来判断是否是重载的方法.

  2020-09-18
杨磊

Overload重载就是同一个类中有多个名称相同的方法,但各个方法的参数列表不同(无关返回类型)例如:

public class test{

int add(int a ,int b ){

return(a+b)

}

int add(int a ,int b ,int c){

return(a+b+c)

}

float add(float a ,float b ){

return(a+b)

}

}

回答已被采纳   2020-09-21
杨磊

Overloaded的方法可以更改返回值类型

  2020-09-21
杨磊

Override重写则发生在不同的类中,并且两者要有继承关系,重写是方法名字和参数的列表是要完全一致的,重写的意义在于父类的方法已经不能满足时,子类重写为自己需要的.例如:

public class test{

int num (int a,int b){

return(a+b)

}

}

class test extends test{

int num (int a,int b){

return(a-b)

}

}

  2020-09-21
赵瑞

overload和override的区别
override(重写)
1、方法名、参数、返回值相同。
2、子类方法不能缩小父类方法的访问权限。
3、子类方法不能抛出比父类方法更多的异常(但子类方法可以不抛出异常)。
4、存在于父类和子类之间。
5、方法被定义为final不能被重写。
overload(重载)
1、参数类型、个数、顺序至少有一个不相同。
2、不能重载只有返回值不同的方法名。
3、存在于父类和子类、同类中。

  2020-09-24
赵瑞

Overloaded的方法是可以改变返回值的类型

  2020-09-24
分享到: