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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 郑才熹 中级黑马   /  2013-7-10 11:13  /  954 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 郑才熹 于 2013-7-10 15:49 编辑

看毕老师的视频中遇到的问题
class Demo
{
    int show(int a,int b)(return 0;)
}
下面函数可以存在于Demo的子类中吗?
public short show(int a,int b)(return 0;)
答案是不可以,因为该函数不可以和给定函数出现在同一类中,或者子父类中。
有谁能帮我解释一下原因吗?为什么该函数不可以和给定函数出现在同一类中,或者子父类中?


评分

参与人数 1黑马币 +3 收起 理由
万琪 + 3 赞一个!

查看全部评分

4 个回复

正序浏览
首先你不用管子类和父类,你函数的参数一样,凡是返回值不一样,那么当对象调用这个函数的时候,你能知道是返回哪个值吗?
所以,相同的参数列表,只能是相同的返回值
回复 使用道具 举报
构不成重载,当你调用Demo的方法show(1,2)的时候,无法确定调用的是哪一个
回复 使用道具 举报
草貌路飞 发表于 2013-7-10 11:20
因为它们的函数名一样,而且没有形成重载。要想函数名一样可以让方法重载,重载是函数名一样,但函数的参数 ...

Thankyou!!!
回复 使用道具 举报
因为它们的函数名一样,而且没有形成重载。要想函数名一样可以让方法重载,重载是函数名一样,但函数的参数不一样,可以是个数不一样也可以是类型不一样。但返回类型不一样是不能构成重载的。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马