黑马程序员——Java基础语法(三) 函数

时间:2021-06-11 00:47:03

-----------android培训java培训、java学习型技术博客、期待与您交流!------------ 

黑马程序员——Java基础语法(三) 函数

函数

 1. 定义:Java中,函数也叫方法,是具有特定功能的一段独立小程序。

 2.格式 :修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2)

    {

      执行语句;

      return 返回值;

   }

  返回值类型:函数运行后的结果的数据类型。

  参数类型:形式参数的数据类型。

  形式参数:是一个变量,用于存储调用函数时传给函数的实际参数。

  实际参数:传递给形式参数的具体值。

  return:用于结束函数。

  返回值:该值会返回给调用者。

3.函数的特点

  a,定义函数可以将功能代码进行封装

  b,便于对该功能进行复用

  c, 函数只有被调用才会被执行

  d,函数的出现提高了代码的复用性

  e,对于函数没有具体返回知道情况,返回值类型用关键字void表示,那么该函数中的return语句如果在在最后一行可以省略不写。

注意:a,函数中只能调用函数,不可以在函数内部定义函数。

     b,定义函数式,函数的结果应该返回给调用者,交由调用者处理。

4.函数的应用

  如何定义一个函数?

  a,既然函数式一个独立的功能,那么该功能的运算结果是什么要先明确。(明确功能的返回值类型)

  b,再明确在定义该功能的过程中是否需要未知的内容(变量)参与运算。(明确函数的参数列表(参数的类型和个数))

5.函数的一个重要特性——重载(override)

      概念:在同一个类中,允许存在一个以上的同名函数,只要它们的参数列表的个数或者参数类型不同即可。

      特点:与返回值类型无关,只看参数列表。

      好处:方便于阅读,优化了程序设计。

      示例:

              //返回两个整数的和

              int add(int x,int y){return x+y;}

              //返回三个整数的和

              int add(int x,int y,int z){returnx+y+z;}

              //返回两个小数的和

              double add(double x,double y){return x+y;}

什么时候用到重载?

      当定义的功能相同,但参与运算的未知内容不同。那么,这时就定义一个函数名称以表示起功能,方便阅读,而通过参数列表的不同来区分多个同名函数。

练习:

 1 /*
 2   需求:客户可以打印出九九乘法表,可以按照自己想法决定打印到第几行。不输入的话默认打印全部。 并且客户也可以打印一个长方形,并且定义长和宽。
 3   思路:1.定义三个函数。一个控制九九乘法表的行数,一个全部打印九九乘法表。 定义一个控制长和宽的函数。
 4         2.九九乘法表需要定义一个参数列表,默认的那个九九乘法表没有参数列表,长方形需要两个参数列表。
 5 */
 6 class  Function
 7 {
 8     public static void main(String[] args) 
 9     {
10         print99();
11         juxing(4,6);
12     }
13     public static void print99(int num)
14     {
15         if(num<=0||num>9)
16         {
17             System.out.println("您的要求超出了九九乘法表所能显示的范围,请重新输入,输入范围1~9!");
18         }
19         else
20         {
21             for (int x=1;x<=num ;x++ )
22             {
23                 for (int y=1;y<=x ;y++ )
24                 {
25                     System.out.print(y+"*"+x+"="+y*x+"\t");
26                 }
27                 System.out.println();
28             
29             }
30             
31         }
32         System.out.println("-------------------------------");
33         return;
34     }
35     public static void print99()
36     {
37         //因为是打印全部,可以把9输入进去调用上面的函数
38         print99(9);
39         return;
40     }
41     public static void juxing(int chang,int kuan)
42     {
43         for (int x=1;x<=chang ;x++ )
44         {
45             for(int y=1;y<=kuan;y++)
46             {
47                 System.out.print("*");
48             }
49             System.out.println();
50         }
51     }
52 }

运行结果:

黑马程序员——Java基础语法(三) 函数