黑马程序员技术交流社区

标题: 方法重载 [打印本页]

作者: 没落NOKIA    时间: 2015-1-10 21:14
标题: 方法重载
mac(int,int,double)
mac(int,double,int)
这两个方法怎么是重载而不是一样?
作者: 寻觅    时间: 2015-1-10 22:40
参数列表不一样,参数列表指的是形式参数类型和形式参数,从前到后是有顺序的,所以(int,int,double)和(int,double,int)是不一样额。所以是重载
作者: xyycici    时间: 2015-1-10 22:45
才上课说的。函数名相同,参数列表不同,即函数重载,与返回值无关。
参数列表不同:包括参数的个数或者参数的类型不同。你这种情况属于参数类型不同。(参数类型与其所在位置也有关的)。你想你调用一个方法的时候,如果有几个类型不同的形参,写实参的时候肯定严格按照定义的顺序写,不可能随便写顺序吧。

作者: 羽狼之翼    时间: 2015-1-10 22:52
各位回答的都很靠谱!
作者: 尚巾仁杰    时间: 2015-1-10 22:58
答案:
这个两个方法是重载的。
考查知识点:
定义函数的格式如下:
修饰符  返回值类型  函数名(参数类型 形式参数1,参数类型 形式参数2)
{
        执行语句;
        Return 返回值;
}
形式参数:是一个变量,用于储存调用函数时传给函数的实际参数(传递给形参的具体数值)。当参数列表的参数类型不同时,形式参数是有顺序的。
重载和返回值类型没关系。



作者: hmyf150122    时间: 2015-1-10 23:19
函数名一样,参数列表不一样,是重载,全一样是重写
作者: lionel    时间: 2015-1-10 23:35
都说的很对
作者: robertlu    时间: 2015-1-13 19:04
这个看参数列表里面:参数的个数、顺序、类型不同都满足条件




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2