Java基础知识---Day05方法(补充)

    技术2025-02-12  17

    Day05

    1.方法

    1.定义:

    方法就好比是一个工厂。

    例如:蒙牛工厂

    原料:奶牛、饲料、水

    产出物:奶制品

    对于方法来说:

    参数(原料):就是进入方法的数据。

    返回值(产出物):就是从方法中出来的数据。

    2.定义方法的完整格式:

    修饰符 返回值类型 方法名称(参数类型 参数名称,…){

    ​ 方法体

    ​ return 返回值;

    }

    (1)修饰符:现阶段的固定写法,public static。

    (2)返回值类型:也就是方法最终产生的数据结果是什么类型

    (3)方法名称:方法的名字,规则和变量一样,小驼峰。

    (4)参数类型:进入方法的数据是什么类型。

    (5)参数名称:进入方法的数据对应的变量名称。

    ​ tips:参数如果有多个使用逗号分隔开。

    (6)方法体:方法需要做的事情,若干行代码。

    (7)return:两个作用,第一停止当前方法。第二将后面的返回值还给调用处。

    (8)返回值:也就是方法执行后最终产生的数据结果。

    ​ 注意:

    (1)return后面的“返回值”,必须和方法名称前面的“返回值类型”保持一致。

    (2)对于一个void没有返回值的方法,return 后面不能跟数据,只能光"return;",作用仅是结束方法的执行。return作为方法的最后一行时可以省略不写。

    (3)一个方法中可以有多个return语句,但是必须保证也同时只有一个会被执行。例如:求两个数中的最大值

    public static int getMax(int a, int b) { if (a > b) { return a; }else { return b; } }

    要么return a执行,要么eturn b执行。

    3.方法调用的三种格式 (1)单独调用:方法名称(参数); (2)打印调用:System.out.println(方法名称(参数)); (3)赋值调用:数据类型 变量名称 = 方法名称(参数);

    4.举例:

    public class Demo02MethodDefine { public static void main(String[] args) { //单独调用 sum(10,20); System.out.println("================="); //打印调用 System.out.println(sum(10,20)); System.out.println("================="); //赋值调用 int num = sum(30,50); System.out.println("结果为" + num); } public static int sum(int a,int b) { System.out.println("方法调用啦!"); int result = a + b; return result; } }

    注意:

    (1)单独调用只能调用方法,但是方法执行后产生的结果不输出,无法使用。

    (2)返回值类型为void的方法只能单独调用,不能打印调用和赋值调用。

    5.方法的调用流程图解。

    找到对应的方法—>参数传递到方法的调用处—>执行方法体—>得到执行结果,带着返回值回到方法的调用处。

    6.方法重载:多个方法名称相同,参数列表不同

    调用方法时,根据参数列表自动匹配执行相应的方法

    方法重载与下列因素相关:

    (1)参数个数不同

    /**参数的个数不同*/ public static int getSum(int a, int b) {//两个参数 int sum; sum = a + b; return sum; } public static int getSum(int a, int b, int c) {//三个参数 int sum; sum = a + b + c; return sum; }

    (2)参数类型不同

    /**参数的类型不同*/ public static int getSum(int a, int b) {//int类型 int sum; sum = a + b; return sum; } public static int getSum(double a, double b) {//double类型 int sum; sum = (int) (a + b); return sum; }

    (3)参数的多类型顺序不同。

    /**参数的多类型顺序不同*/ public static int getSum(int a, double b) { int sum; sum = (int) (a + b); return sum; } public static int getSum(double a, int b) { int sum = (int) (a + b); return sum; }

    方法重载与下列因素无关:

    (1)与参数名称无关

    public static int getSum(int a, int b) { int sum; sum = a + b; return sum; } public static int getSum(int z, int x) {//错误重载,与参数名称无关。 int sum; sum = z + x; return sum; }

    (2)与方法的返回值类型无关

    public static int getSum(int a, int b) { return a + b; } public static double getSum(int a, int b) {//错误重载,与方法的返回值类型无关。 return a + b; }
    Processed: 0.009, SQL: 9