A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© xpsyztd 中级黑马   /  2014-9-2 23:02  /  962 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

overload和override的区别?

3 个回复

倒序浏览
方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。
回复 使用道具 举报
1、重载:
重载是在同一个类中的两个或两个以上的方法,拥有相同的方法名,方法名相同,参数列表不同
2、重写:
也叫覆盖,指在子类中定义一个与父类中方法同名同参数列表的方法。因为子类会继承父类的方法,而重写就是将从父类继承过来的方法重新定义一次,重新填写方法中的代码。即子类的方法覆盖父类的方法。

重载是在同一个类中的两个或两个以上的方法,拥有相同的方法名,但是参数却不相同,方法体也不相同,最常见的重载的例子就是类的构造函数,可以参考API帮助文档看看类的构造方法
回复 使用道具 举报
隔夜修书 发表于 2014-9-3 07:33
方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的 ...

清楚明了,写的不错.
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马