黑马程序员技术交流社区

标题: 函数的重载 [打印本页]

作者: 向上    时间: 2015-9-2 21:43
标题: 函数的重载
  函数的重载-overload
                     概念
                                在同一个类中, 函数名相同,参数列表不同(参数类型和个数),与返回值类型无关
                     举例
                               class Demo{
public static void print(int x, int y);
public static void print(int a,int b,int c)
public static void print(double a);
public static void print(int a);
}
作者: Tangjw    时间: 2015-9-2 22:47
你写的这4个,返回值都为空吗?
与返回值类型无关的意思是,两个函数不能仅有返回值不同就说重载。
例如;
public static void print(int a,int b,int c)
return a;
public static void print(int a,int b,int c)
return b;
这两个不重载。纯粹个人理解
作者: 果蝇    时间: 2015-9-2 23:19
分号结尾,这是抽象方法吧,类名又不是抽象类,肯定报错.
作者: Glc90    时间: 2015-9-3 12:41
~~~~~~~~可以赞
作者: Wqi    时间: 2015-9-3 13:08
重载:同一个类中,函数名相同,参数列表不同的多个函数.重载与函数返回值类型无关.
作者: 寰宇天侠    时间: 2015-9-3 13:23
子类和父类有方法名相同参数列表不同的两个方法  是不是重载呢?符合重载特性的
作者: sandyluo    时间: 2015-9-3 13:31
加了分号是为报错的,亲。
作者: 哈哈哈欠虫    时间: 2015-9-3 13:39
都以分号结尾,会报错的吧
作者: ZZBY    时间: 2015-9-3 13:49
楼主这是笔记写的伪代码吧,各位不要太纠结分号问题

重载主要两点:
1、参数列表不同
print(int a,double b)
与print(double a,int b)重载
2、与返回值类型无关
无论是int 、void 、boolean还是其他,都与重载无关
作者: jeska    时间: 2015-9-3 14:00
Tangjw 发表于 2015-9-2 22:47
你写的这4个,返回值都为空吗?
与返回值类型无关的意思是,两个函数不能仅有返回值不同就说重载。
例如;

你函数前面是void,,还写return a?你这方法本身就不对
作者: Tangjw    时间: 2015-9-3 20:25
jeska 发表于 2015-9-3 14:00
你函数前面是void,,还写return a?你这方法本身就不对

.直接复制上面的, 该int之类的




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