Java中,方法重载和方法重写各有什么要求,有什么区别?

请各位帮帮忙啊... 请各位帮帮忙啊 展开
 我来答
sunwei6
2008-07-25 · 超过17用户采纳过TA的回答
知道答主
回答量:89
采纳率:0%
帮助的人:51万
展开全部
答:方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重 载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被"屏蔽"了。如果在一个类中定义了多个同名的方 法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型
结论:::::::::
Overload(重载):1.可以在一个类中也可以在继承关系的类中;2.名相同;3.参数列表不同(个数,顺序,类型) 和方法的返回值类型无关。
Override(覆盖):1.不能存在同一个类中,在继承关系的类中;2. 名相同,参数列表相同,方法返回值相同,3.子类方法的访问修饰符要大于父类的。4.子类的检查异常类型要小于父类的检查异常。
yeskeesky
推荐于2016-01-08 · TA获得超过302个赞
知道小有建树答主
回答量:74
采纳率:0%
帮助的人:0
展开全部
方法重载:

方法重载是指方法名和方法的返回类型都相同,但方法参数不一样.

参数不一样体现在参数个数和参数类型不一样.

举个例子:
Test.java
--------------
public class Test
{
public static void main(String[] args){
Test ts = new Test() ;
System.out.println(ts.ss("s1","s2")) ;
System.out.println(ts.ss("s1")) ;
}
public String ss(String s1,String s2){
return s1+s2 ;
}
public String ss(String s1){
return s1 ;
}
}
----------------
其中ss就形成了方法重载.
此程序可以运行,本人运行过!!!

方法重写:

方法重写是相对继承而言的.

重写的方法名.返回类型,参数类型和参数个数都要求和父类中的一样.这是重载和重写形式上的区别.

当类继承某个类的时候 .一些属性和方法也被继承过来了.这样就可以用子类对象调用父类中的某个方法.但如果你对父类中的方法不满意,便可以对父类中的方法进行重写.实现你想要的功能!!!

希望你能从我说的体会到两者的区别!!!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
likablegirl
2008-07-25 · TA获得超过135个赞
知道小有建树答主
回答量:194
采纳率:0%
帮助的人:114万
展开全部
方法的重载可以由本类完成也可以由子类完成,是指写一个另外的方法,只不过名字一样,但参数不一样

方法的重写是指子类写一个和父类一模一样的方法(参数也一样),从而把父类的方法给覆盖掉了(除了final修饰的类无法被覆盖)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式