Fork me on GitHub

Java 语言基础之函数

函数的定义:

  • 函数就是定义在类中的具有特定功能的一段独立小程序
  • 函数也称为方法

函数定义格式:
修饰符 返回值类型 函数名(参数类型 形式参数1, 参数类型 形式参数2,...)
{
执行语句;
return 返回值;
}

备注:

  • 如果函数没有具体的返回值,则返回值类型为 void; 此时,函数中 return 语句可以省略不写;
  • 函数返回值类型和参数类型没有直接关系

定义函数需要考虑两方面:

  1. 这个函数的结果是什么? 其实就是在明确函数的返回值类型
  2. 这个函数实现过程中是否需要未知内容参与运算? 即函数的参数列表(参数个数和参数类型)

注意:

  • 函数中只能调用函数,不可以在函数内部定义函数
  • 定义函数时, 函数运行的结果应该返回给调用者, 由调用者处理该结果
错误示例一:在主函数中定义函数
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.

函数的特点:

  1. 将功能代码进行封装
  2. 提高了代码的复用性

函数的重载

概念: 在同一个类中, 允许存在一个以上的同名函数, 只要它们的参数个数或者参数类型不同即可.
注意: 与返回值类型无关, 只看参数列表(参数个数或参数类型)
原因: java 是严谨性语言, 如果只有函数返回值不同, 会出现函数调用的不确定性, 编译失败.

参考资料:
JavaSE 基础视频(毕向东)

posted @ 2017-08-23 22:30  小a的软件思考  阅读(243)  评论(0编辑  收藏  举报