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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 杨胜男 中级黑马   /  2014-6-6 10:06  /  2756 人查看  /  9 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

函数重载的返回值类型可以不同吗?

如果可以不同,需要什么条件?

9 个回复

正序浏览
函数重载需要满足的条件:
1,方法名一定要相同
2,方法的参数类型,个数,顺序至少一项要不同
3,返回值类型可以不相同,修饰符可以不相同

上面的前两点是必须要满足的,返回值类型可以不同,也可以相同,修饰符也也一样。
回复 使用道具 举报
重载:参数名相同,参数列不同。只有这两点。
顺便提醒:覆盖(override)要考虑返回值,遇到注意
回复 使用道具 举报
1.返回值类型不会对是否重载有影响。
   如果参数列表与方法名字相同,返回类型相同与不同都不算重载。

2.方法重载的条件:
   当方法名字相同时,以下三种参数形式都可以重载:
  (1)不同的参数类型
  (2)不同的参数个数
  (3)不同的参数顺序
回复 使用道具 举报
函数是否重载只看函数名和参数列表;只有当函数名相同,函数列表不同时候才可以构成重载,参数列表顺序不同也算.
回复 使用道具 举报
重载定义:在同一个类中,函数名相同,参数类型 或 参数个数 不同则构成重载!函数重载是与返回值类型无关!
回复 使用道具 举报
跟返回值类型无关撒
回复 使用道具 举报
本帖最后由 姿_`态 于 2014-6-6 19:00 编辑

只要保证,参数列表参数个数不相同 或者类型不完全相同就行了
方法(参数类型 形式参数 ,参数类型 形式参数)
回复 使用道具 举报
函数重载:1,函数名一定要形同
                 2,参数列表一定要不同(参数的个数不同,参数类型不同)
满足这两点 就可以使函数重载   当然函数重载的返回值类型可以不同
回复 使用道具 举报
本帖最后由 夏日蓝雪 于 2014-6-6 10:23 编辑

函数重载跟返回类型无关,相不相同都可以。
函数重载只关注参数类型与个数,只要保证参数类型与个数其中之一不同或者两者都不同就行。
因为虚拟机在调用名字相同的函数即重载的函数时,它要分辨出调用的是哪一个函数,所以参数的地方必须要有所区别。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马