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

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;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值