JK_point 2017-05-24 03:45 采纳率: 100%
浏览 9549
已采纳

java方法的重载,重载可以返回值类型不同吗

是不是只要两个方法的返回值类型不同就不构成重载了?
如题
给定Java代码如下所示,在横线处新增下列()方法,是对cal方法的重载。
public class Test{
public void cal(int x, int y, int z) {}

}
A. public int cal(int x, int y, float z){ return 0; }
B. //public int cal(int x, int y, int z){ return 0; }
C. public void cal(int x, int z){ }
D. //public void cal(int z, int y, int x){ }
C我知道对的,就想知道,A为什么错了

  • 写回答

6条回答 默认 最新

  • 筑梦之路 2017-05-24 04:05
    关注
    (1) 方法重载是让类以统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。
    

    重载Overloading是一个类中多态性的一种表现。

    (2) Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。
    

    调用方法时通过传递给它们的不同参数个数和参数类型来决定具体使用哪个方法, 这就是多态性。

    (3) 重载的时候,方法名要一样,但是参数类型和个数不一样,返回值类型可以相同也可以不相同。无法以返回型别作为重载函数的区分标准
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 CSS实现渐隐虚线边框
  • ¥15 thinkphp6配合social login单点登录问题
  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题