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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ぺsimon☆ 中级黑马   /  2013-4-18 17:34  /  1046 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 ぺsimon☆ 于 2013-4-18 18:00 编辑

class Demo
{
  int show(int a,int b)
{
return 0;
}
}

下面那些函数可以存在于Demo的子类中
short show(int a,intb)
{
return 0;
}

问题:为什么下面的函数不能存在与Demo的子类中呢?他们的返回值类型不一样,不是重载也不是覆盖,不是同一个函数,为什么不能?
谢谢

2 个回复

倒序浏览
本帖最后由 。。。。。。 于 2013-4-18 17:46 编辑

class Demo
{
int show(int a,int b)
{
  return a;
}
}
class Demo1 extends Demo
{
short shoe(int a,int b)
{
  return (short)a;
}
}
像这样,如果,我new Demo1对像,再调用show()方法,是调用哪个?因为子类也继承了父类的方法,子类也就有两个show(),会引起歧义。只通过返回值是无法区分两个方法的。
回复 使用道具 举报
。。。。。。 发表于 2013-4-18 17:45
class Demo
{
int show(int a,int b)

哦,明白了,真是学了后面忘了前面啊
谢谢兄弟呵呵
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马