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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© fantianfei 中级黑马   /  2015-6-29 13:21  /  148 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

函数:
定义:指在类中的具有特定功能的一段小程序,也称为方法。
格式:修饰符 返回值类型 函数名{参数类型 形式参数1,参数类型 形式参数2,...)                //参数是有顺序的。
{
        执行语句;
        return 返回值;
}

返回值类型:函数运行后的结果的数据类型。
参数类型:是形式参数的数据类型。
形式参数:是一个变量,用于存储调用函数时传递给函数的实际参数。
实际参数:传递给形式参数的具体数值。
return:用于结束函数。
返回值:该值会返回给调用者。

定义函数可以将功能代码进行封装,便于进行复用。
函数只有被调用才会被执行。
对于函数没有具体返回值的情况,返回值类型常用关键字void表示,那么该函数中的return语句如果在最后一行可以忽略不写。

函数只能调用函数,不能在函数内定义函数。定义函数时,函数的结果应该返回给调用者,交由调用者处理。

如何定义一个函数呢?
1.既然函数是一个独立的功能,那么该功能的运算结果是什么,要明确好。
2.在明确该功能的过程中是否需要其他未知的内容参与运算?

需求:定义一个功能,实现两个整数变量的和.
1.明确功能的结果,是一个整数的和。
2.在实现该功能的过程中有未知内容进行参与运算。
其实这两个就是在明确函数的定义。
1.是在明确函数的返回值类型。
2.明确函数的参数列表(参与的类型和个数)

函数重载(Overload):在同一个类中允许存在一个以上的同名函数,只要他们的参数个数和参数类型不同即可。
特点:与返回值类型无关,只看参数列表。
优点:方便于阅读,优化了程序设计。

什么时候用重载,当定义的功能相同,但是参与运算的未知内容不同。
那么,这时就定义一个函数名称以表示功能,方便阅读,而通过参数列表的不同来区分多个重名函数。
例如:
void show(int a, char b, double c){}
判断以下函数和给定函数是否重载?
1.void show(int x, char y, double z){}   没有,因为参数类型和原函数一样,变量可以随意命名的。   

2.int show(int a, double b, char c){}    重载,参数类型不同,参数是有顺序的,和返回值类型无关。

3.void show(int a, double c,char b){}   同上。

4.boolean show(int a, char b){}                         重载,参数个数不同。

5.void show(double c){}                                         同上

6.double show(int x, char y, double z){} 没有,参数一致。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马