java基础5-方法

1.方法定义

方法是程序中最小的执行单元。

重复的代码,具有独立功能的代码可以抽取到方法中。

好处:可以提高代纳的复用性;可以提高代码的可维护性

 

格式:方法名遵循驼峰式命名

public static void 方法名(){
      //方法体(就是打包起来的代码);      
}    

调用:    方法名();

  • 基础的方法定义和调用
public class Java01 {   //示例
    public static void main(String[] args){
       test();//输出Hello World
    }

    public static void test(){
        System.out.println("Hello World");
    }
}
  • 带参数的方法定义和调用
public class Java01 {
    public static void main(String[] args){
       cal(1,2);//传入参数1,2,打印结果为3
    }

    public static void cal(int num1,int num2){
       int result=num1+num2;
       System.out.println(result);
    }
}

形参:全称形式参数,是指方法定义中的参数

实参:全称实际参数,方法调用中的参数

以上代码中cal(1,2); 是实参   cal方法中(int num1,int num2)是形参

  • 带返回值的方法调用 
public class Java01 {
    public static void main(String[] args){
        int Sum = getSum(1,2);
    }

    public static int getSum(int num1,int num2){ //将void改成返回值类型
       int result=num1+num2;
       return result;
    }
}

2.方法的注意事项:

  • 方法不调用就不执行
  • 方法与方法之间是平级关系,不能互相嵌套
  • 方法的编写顺序和执行顺序无关
  • 方法的返回值类型为void,表示该方法没有返回值,没有返回值的方法可以省略return语句不写。如果要写return后面不能跟具体数据
  • return语句下面,不能编写代码,因为永远执行不到属于无效代码

3.方法的重载

在同一个类中,定义了多个同名的方法,这些同名的方法具有同种的功能;每个方法具有不同的参数类型或参数个数,这些同名的方法,就构成了重载关系。(同一个类中,方法名相同,参数不同的方法,与返回值无关)

public class Java01 {
    public static void main(String[] args){
       System.out.println(compare(3,5));
    }

    public static int compare(int a,int b){
      int max=a>b?a:b;
      System.out.println("两个参数");
       return max;
    }
    public static int compare(int a,int b,int c){
        int max=a>b?a:b;
        max=max>c?max:c;
        System.out.println("三个参数");
        return max;
    }
}
//输出
//两个参数
//5

4.方法的内存

基本数据类型:在栈中先进后出

public class Java01 {
    public static void main(String[] args){
     eat();
    }

    public static void eat(){
     study();
     System.out.println("吃饭");
     sleep();
    }

    private static void sleep() {
        System.out.println("睡觉");
    }

    private static void study() {
        System.out.println("学习");
    }
//打印结果为
//学习
//吃饭
//睡觉
}

注意:传递基本数据类型时,传递的时真实的数据,形参的改变不影响实际参数的值

public class Java01 {
    public static void main(String[] args){
     int num = 100;
     System.out.println(num);
     change(num);
     System.out.println(num);
    }

    private static void change(int num) {
        num=200;
    }
}//输出为两个100

引用数据类型:

image

 变量中存储的是地址值。

与基本数据类型不同,change传递的时arr的地址

public class Java01 {
    public static void main(String[] args){
     int[] arr={10,20,30};
     System.out.println(arr[1]);
     change(arr);
     System.out.println(arr[1]);
    }

    private static void change(int[] arr) {
       arr[1]=100;
    }
}//输出结果为 20 100

 

posted @ 2025-10-11 18:52  chen1chen  阅读(9)  评论(0)    收藏  举报