overload和override的区别

overload和override的区别

ID:34707940

大小:53.90 KB

页数:4页

时间:2019-03-09

overload和override的区别_第1页
overload和override的区别_第2页
overload和override的区别_第3页
overload和override的区别_第4页
资源描述:

《overload和override的区别》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、overload和override的区别(2007-06-0317:35:53)转载分类:技术交流 1、Overload没有关系,Override有点关系(范围小的可以被范围大的Override)。 2、Overload返回值类型不同不能作为不同的两个函数,Override应该完全一样的返回类型。 ---------------------------------------------------------------  overload: public a(){} public a(int a){] 在一

2、个类中有同名的方法,但是方法带有不同的参数  Override: public class a{   public aaa(){] } public class b extends a {   public aaa(){} } 方法aaa Override ---------------------------------------------------------------  还有,overload一般发生在同一个类中的有着不同的参数名和(或)不同数量的参数的同名方法之间,但同名方法的返回值可以一样 o

3、verride比较常见的是子类继承父类后,override父类中的一些方法以满足自己的需要。 我好像记得override的方法前的访问控制不能比父类中的方法中的控制权限低,就是说protected的父类方法不能被override成private或default的,你可以去看看书,书上应该有介绍。  ---------------------------------------------------------------  >>overload(通常被翻译为过载或重载)  一般语境里overload是对met

4、hod(方法)而言的,可以指一个类中多个名字相同而参数类型列表不相同的方法,这个名字代表的方法就是被overload了的。编译器会根据参数类型列表的不同来决定调用叫这个名字的很多方法中具体的哪一个。  >>override(通常被翻译为覆盖)  一般语境里,如果说这个method(方法)是被override来的,就是说在定义这个方法的类的父类中有一个与这个方法同名且参数类型列表相同的方法,在子类中,这个方法被override了。在对这个子类的实例调用该方法时,编译器确切的知道调用的是这个子类的方法。  考虑这样

5、两个类:  class Father {     public void doSomething(){}     public void doSomething(int a){}     public void doSomething(String s, int a){} }  class Son extends Father {     public void doSomething(String s, int a) {}     public void doSomething(int a, String s

6、){} }  Father类中有3个doSomething方法,唯一的区别是参数类型列表,它们是overload了的方法。再看子类,第一个方法也叫doSomething,且父类中有一个doSomething方法和这个方法的参数类型列表相同,所以这是override;而第二个方法虽然名字也叫doSomething,但它的参数类型列表跟父类中和子类中其他的doSomething方法的参数类型列表不一致,所以编译器默认这是一个overload的方法。那实际上我们有多少种方式来调用Son的实例呢?如下:  new So

7、n().dosomething(); new Son().dosomething(3); new Son().dosomething("Hi", 5); new Son().dosomething(7, "Hello");  其中前三个是从父类继承的,且第三个是调用的子类的那个public void doSomething(String s, int a){}方法,最后一个是在子类中新定义的一个overload的方法。  注意:overload是指同样的东西在不同的地方具有多种含义,而override是指它随时

8、随地都只有一种含义。 Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?java面试题2008-11-1919:12:36阅读37评论0  字号:大中小 订阅方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。