函数的定义:
- 函数就是定义在类中的具有特定功能的一段独立小程序
- 函数也称为方法
函数定义格式:
修饰符 返回值类型 函数名(参数类型 形式参数1, 参数类型 形式参数2,...)
{
执行语句;
return 返回值;
}
备注:
- 如果函数没有具体的返回值,则返回值类型为 void; 此时,函数中 return 语句可以省略不写;
- 函数返回值类型和参数类型没有直接关系
定义函数需要考虑两方面:
- 这个函数的结果是什么? 其实就是在明确函数的返回值类型
- 这个函数实现过程中是否需要未知内容参与运算? 即函数的参数列表(参数个数和参数类型)
注意:
- 函数中只能调用函数,不可以在函数内部定义函数
- 定义函数时, 函数运行的结果应该返回给调用者, 由调用者处理该结果
错误示例一:在主函数中定义函数
class FunctionDemo
{
public static void main(String[] args)
{
public static void myPrint()
{
System.out.println("Hello world!");
}
}
}
错误示例二:
根据考试成绩获取学生分数对应的等级:
90~100 A
80~89 B
70~79 C
60~69 D
60以下 E
分析: 函数结果: 对应的等级, 类型为字符, 即 char
函数参数: 学生分数, 类型为整型, 即 int
public static char getLevel(int num)
{
char level;
if(num>=90 && num<=100)
level = 'A';
else if(num>=80 && num<=89)
level = 'B';
else if(num>=70 && num<=79)
level = 'C';
else if(num>=60 && num<=69)
level = 'D';
else if(num<60 || num>100)
level = 'E';
return level;
}
编译失败原因:
编译主要检查语法错误,不进行运算. 如果上述四个 else 都不满足, level 没有值, 相当于没有初始化.需要将最后一个 else if 该为 else.
函数的特点:
- 将功能代码进行封装
- 提高了代码的复用性
函数的重载
概念: 在同一个类中, 允许存在一个以上的同名函数, 只要它们的参数个数或者参数类型不同即可.
注意: 与返回值类型无关, 只看参数列表(参数个数或参数类型)
原因: java 是严谨性语言, 如果只有函数返回值不同, 会出现函数调用的不确定性, 编译失败.
参考资料:
JavaSE 基础视频(毕向东)