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

© 向上 中级黑马   /  2015-9-2 21:43  /  543 人查看  /  10 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  函数的重载-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);
}

10 个回复

倒序浏览
你写的这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;
这两个不重载。纯粹个人理解
回复 使用道具 举报
分号结尾,这是抽象方法吧,类名又不是抽象类,肯定报错.
回复 使用道具 举报
~~~~~~~~可以赞
回复 使用道具 举报
重载:同一个类中,函数名相同,参数列表不同的多个函数.重载与函数返回值类型无关.
回复 使用道具 举报
子类和父类有方法名相同参数列表不同的两个方法  是不是重载呢?符合重载特性的
回复 使用道具 举报
加了分号是为报错的,亲。
回复 使用道具 举报
都以分号结尾,会报错的吧
回复 使用道具 举报
ZZBY 中级黑马 2015-9-3 13:49:03
9#
楼主这是笔记写的伪代码吧,各位不要太纠结分号问题

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

你函数前面是void,,还写return a?你这方法本身就不对
回复 使用道具 举报
jeska 发表于 2015-9-3 14:00
你函数前面是void,,还写return a?你这方法本身就不对

.直接复制上面的, 该int之类的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马