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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© caoyang521 高级黑马   /  2014-1-1 19:13  /  1420 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 caoyang521 于 2014-1-1 21:36 编辑

最近刚接触函数,继承,有点乱,不是很明白,求教!

评分

参与人数 1黑马币 +3 收起 理由
乔兵 + 3

查看全部评分

5 个回复

倒序浏览
方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,

将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了,而且如果子类的方法名和参数类型和个数都和父类相同,那么子类的返回值类型必须和父类的相同;如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载。Overloaded的方法

是可以改变返回值的类型。也就是说,重载的返回值类型可以相同也可以不同。

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报
回复 使用道具 举报
重载只看同名函数的参数列表,重写就是子父类方法一样但内容不同,说白了就是姜维继承了武侯遗志北伐,这就是重载;而魏延却推翻了武侯的遗志准备自立,这就是重写。
回复 使用道具 举报
两者都是基于继承,重写是子类的方法覆盖父类的方法,要求方法名和参数都相同重载是在同一个类中的两个或两个以上的方法,拥有相同的方法名,但是参数却不相同,方法体也不相同,最常见的重载的例子就是类的构造函数,可以参考API帮助文档看看类的构造方法。

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报 1 0
qq457986031 发表于 2014-1-1 19:31
重载只看同名函数的参数列表,重写就是子父类方法一样但内容不同,说白了就是姜维继承了武侯遗志北伐,这就 ...

谢谢,很形象的比喻!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马