函数概述、return关键字、函数重载

来源:互联网 发布:大数据平台 编辑:程序博客网 时间:2024/05/18 02:17

一、函数概述(函数又称为方法):
1、函数的作用: 提高功能代码的复用性。

2、举例:

class Demo1 {    public static void main(String[] args) {        int a = 3;        int b = 4;        System.out.println("sum="+(a+b));        a = 5;        b = 6;        System.out.println("sum="+(a+b));    }}

1)分析:以上的代码都是在做一个加法功能,而这里加法功能的代码目前是没有任何的复用性的。
2)解决方案: 如果一个功能的代码要被复用起来,那么这时候可以把这里的功能代码封装起来,在java中把功能代码封装起来的是以函数的形式体现的。

class Demo1 {    public static void main(String[] args) {        int sum = add(2,3);        System.out.println(sum);    }    public static int add(int a,int b){        return a+b;    }}

3)分析函数:

public static int add(int a,int b){    return a+b;}

a)修饰符: public static
b)返回值类型: int 。 返回值类型就是指函数运行完毕后,返回的结果的数据类型。
注意: 某些函数是没有结果返回给调用者的,那么这时候返回值类型是void。

class Demo1 {    public static void main(String[] args) {    //(2,3)中的2,3为实际参数(实参)        add(2,3);    }    //(int a,int b)中的a,b为形式参数    public static void add(int a,int b){        System.out.println(a+b);    }}

c)函数:
函数名: add
函数名的作用:如果需要调用该函数就需要使用的函数名。 函数名只要符合标识符的命名规则即可。
函数名的命名规范: 首单词全部小写,其他单词的首字母大写,其他字母小写。
d)形式参数:如果一个函数在运行的时候,存在着数据是要由调用者确定的,那么这时候就应该定义形式参数。
e)return : 把一个结果返回给调用者。

3、函数的定义格式:

修饰符  返回值类型  函数名(形式参数...){    需要被封装的功能代码;    return 结果;}

4、如何定义一个函数:
1)返回值类型。
2)是否存在未知的参数(是否存在要由调用者确定的参数)。—->形式参数。

5、函数的特点:
1)函数的作用就是把一个功能代码给封装起来,已达到提高功能代码的复用性。
2)函数定义好之后是需要被调用才会执行的main函数是有jvm调用的,不需要我们手动调用。
3)如果一个函数没有返回值返回给调用者,那么返回值类型必须是使用void表示。

二、return关键字:
1、看这样一个例子:

1)分析原因:如果一个函数的返回值类型是具体的数据类型,那么该函数就必须要保证在任意情况下都保证有返回值。(除了返回值类型是void以外)
2)修改后代码:

public static String  getGrade(int score){      if(score>=90&&score<=100){        return "A等级";    }else if(score>=80&&score<=89){        return "B等级";    }else if(score>=70&&score<=79){        return "C等级";    }else if(score>=60&&score<=69){        return "D等级";    }else if(score>=0&&score<=59){        return "E等级";    //这样就满足了所有条件下都有返回值了    }else{        return "";    }       }

2、return 关键字的作用:
1) 返回数据给函数的调用者。
2)函数一旦执行到了return关键字,那么该函数马上结束。 (能结束一个函数)

3、注意:一个函数的返回值类型是void,那么也可以出现return关键字,但是return关键字的后面不能有数据。

看到这里大家可能会有这样的一个想法,return和break貌似功能一样啊?
答:错,有本质区别。

4、break关键字与return关键字的区别:
1)break关键字是结束一个循环
2)return关键字是结束一个函数

这时候大家可能会想到并说,那return后面再接的语句不就是废话了吗?那不应该报错吗?
答:for循环中的i为变量,jvm不会识别for循环中的条件是否满足,所以不报错。

三、函数的重载:
1、定义:在一个类中出现两个或者两个以上的同名函数,这个称作为函数的重载。

2、函数重载的作用: 实现同一个函数名可以对应不同的函数,以应对不同个数或者不同数据类型的参数。

class Demo1 {    public static void main(String[] args) {        add(1,2);    }    //这个不是函数的重载,而叫做函数重复    public static void add(int a , int b){        System.out.println("两个参数的总和: "+ (a+b));    }    public static void add(int a , int b){        System.out.println("两个参数的总和: "+ (a+b));    }   }

3、函数重载的要求:
1)函数名一致。
2)形参列表不一致。(形式参数的个数或者是对应的数据类型不一致)
3)与函数的返回值类型是无关的。

0 0
原创粉丝点击