JAVA 的方法详解

什么是方法

是用于完成额定功能的代码片段,相当于C语言的函数,java里面带括号的语句基本都是,包括一个:方法头 + 方法体,具体包括:

  • 修饰符:可选,告诉编译器如何调用该方法,定义了访问类型。例子:public static final
  • 返回值类型:returnValueType是方法返回值的数据类型,有的方法没有返回值,此时returnValueType是关键字void(表示是空的,不返回任何值)。例子:int 、void(代表无返回值)
  • 方法名:是方法实际名字,方法名和参数表共同构成方法签名(所有的东西都需要名字,low驼峰命名)
  • 参数类型:方法可以不包含任何参数,参数相当于占位符(规范内随便写就行),当方法被调用的时候传递值给参数。形式参数和实际参数,一个相当于容器,一个相当于内容。例子:加法方法--add(int a, int b) ,输出1-1000能被5整除的数字,并且每行输出3个的方法,test(),这个方法就没有任何参数
  • 方法体:包含具体语句,定义该方法的功能。
  • return:如果该方法是void,不返回任何值的话,就不需要写return。如果不是,就必须要写,格式是:return 返回值;return还有一个作用是终止该方法

举例:加法的方法:

package com.kuang.method;
//写一个加法的方法,然后调用它
public class Demo01 {

    public static void main(String[] args) {
        int sum = add(10, 20);
        System.out.println(sum);
    }


    public static int add(int num1, int num2) {
        return num1 + num2;//修饰符 + 返回值类型 + 方法名(参数类型:占位符)
    }
}


修饰符

返回值类型

方法名

参数类型

public static

void

main

(String[ ] args)

public static

int

max

(int num1,int num2)

方法调用

调用方法:对象名.方法名(实参列表)

2种调用方法:根据是否有返回值来选择

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

int larger =max(30,40);
System.out.println("Hello world!")

如果方法返回值是void,方法调用一定是条语句

举例:比较2个数字的大小

package com.kuang.method;
//比较两个数字的大小
public class Demo02 {
    public static void main(String[] args) {
        int winner = larger(60,45);
        System.out.println(winner);
    }


    public static int larger(int a, int b){
        int result =0;
        if(a==b){
            System.out.println("相等");
            return 0;
        };//首先处理相等的情况,因为后面的if else语句不能完全覆盖所有情况,如果不放在前面,后面出现相等了就轮不到执行这句
        if(a>b){
            result = a;
        }else {
            result = b;
        }
        return result;
    }
}

课后拓展

值传递 和 引用传递
为啥要用方法?

  • 如果所有的代码实现都写在main方法里面,代码看起来不简洁,太复杂
  • 方法是可以公用的
  • 方法可以在类里面调用,具体是啥,可能学到后面才会知道了。

【从善如登,从恶如崩】