2022.3.9 方法调用重载

方法

方法的组成部分

  1. 修饰符:可选,定义了该方法的返回类型,pubic,static,修饰符可以颠倒位置

  2. 返回值类型:方法可能会有返回值

  3. 方法名:方法的实际名称

  4. 参数类型

    • 形式参数:在方法被调用时用于接收外界输入的数据

    • 实参:调用方法时实际传给方法的数据

  5. 方法体:包含具体的语句,定义该方法的功能

  6.  修饰符 返回值类型 方法名(参数类型,参数名){
        ...
         方法体
        ...
         return 返回值;//一般写在方法中最后一层大括号
     }

方法调用

  1. 当方法返回一个值的时候,方法调用通常被当做一个值

     int max = max(10, 20);
  2. 如果方法返回值是void,方法调用一定是一条语句

     print();

方法的重载

重载就是在一个类中,有相同的函数名称,但形参不同的函数

方法的重载的规则

  • 方法名称必须相同

  • 参数列表必须不同(个数不同,或类型不同,参数排列顺序不同等)

  • 方法的返回类型可以相同也可以不相同

  • 仅仅返回类型不同不足以称为方法的重载

 1  package com.xing.method;
 2  3  public class Demo02 {
 4      public static void main(String[] args) {
 5          int max = max(10, 20);
 6          System.out.println(max);
 7          double max1 = max(2.5, 3.2);
 8          System.out.println(max1);
 9          int max2 = max(1, 2, 3);
10          System.out.println(max2);
11 12      }
13 14      public static int max(int num1,int num2) {
15          int result = 0;
16          if (num1 == num2) {
17              System.out.println("num1=num2");
18              //程序在方法中碰到return,方法就结束了
19              return 0;//return除了返回结果还有终止方法的作用
20          }
21          if (num1 > num2) {
22              result = num1;
23          }else {
24              result = num2;
25          }
26          return result;//return一般写在方法中最后一层大括号
27      }
28      public static int max(int num1,int num2,int num3) {
29          int result = 0;
30          if (num1 == num2 && num2 == num3) {
31              System.out.println("num1=num2=num3");
32              return 0;
33          }
34          if (num1 > num2) {
35              result = num1;
36          }else {
37              result = num2;
38          }
39          if (result < num3) {
40              result = num3;
41          }
42          return result;//return一般写在方法中最后一层大括号
43      }
44      public static double max(double num1,double num2) {
45          double result = 0;
46          if (num1 == num2) {
47              System.out.println("num1=num2");
48              //程序在方法中碰到return,方法就结束了
49              return 0;//return除了返回结果还有终止方法的作用
50          }
51          if (num1 > num2) {
52              result = num1;
53          }else {
54              result = num2;
55          }
56          return result;//return一般写在方法中最后一层大括号
57      }
58  }

可变参数

  • 在方法声明中,在指定参数类型后面加一个省略号(...)

  • 一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明

 1  package com.xing.method;
 2  3  public class Demo03 {
 4      public static void main(String[] args) {
 5          Demo03 demo03 = new Demo03();
 6          demo03.text(1,2,3,1,5);
 7  8      }
 9      //              可能传递多个i,具体不知道几个,可以用可变参数:加(...)
10      public void text(int... i){
11          System.out.println(i[0]);//输出传入的第一参数
12          System.out.println(i[1]);
13          System.out.println(i[2]);
14          System.out.println(i[3]);
15          System.out.println(i[4]);
16      }
17  }
posted @ 2022-03-09 16:59  暴躁C语言  阅读(80)  评论(0)    收藏  举报