zl程序教程

您现在的位置是:首页 >  IT要闻

当前栏目

Java面向对象系列(3)- 回顾方法的调用

2023-02-18 16:24:08 时间

方法的调用

  • 静态方法
  • 非静态方法
  • 形参和实参
  • 值传递和引用传递
  • this关键字(继承篇讲解)

静态方法

非静态方法

 

形参和实参

package oop.demo01;

public class Demo03 {
    public static void main(String[] args) {
        //因为add不是static,需要实例化类调用
        //实参
        int add = new Demo03().add(1,2);
        System.out.println(add);
        
        //实参
        int ajj = ajj(5,1);
        System.out.println(ajj);

    }
    //行参
    public int add(int a,int b){
        return a+b;
    }
    //行参
    public static int ajj(int a,int b){
        return a-b;
    }
}

 

值传递和引用传递

值传递

package oop.demo01;

//值传递
public class Demo04 {
    public static void main(String[] args) {
        int a = 1;
        System.out.println(a);
        
        new Demo04().change(a);
        System.out.println(a);
    }
    
    //返回为空
    public void change(int a){
        a = 10;
    }
}

 

 引用传递:通过对象传递,本质还是值传递

package oop.demo01;

public class Demo05 {
    public static void main(String[] args) {
        Person person = new Person();

        System.out.println(person.name); //null

        new Demo05().change(person);

        System.out.println(person.name);//葛老头

    }
    public void change(Person person){
        //person是一个对象:指向的是--->Person person = new Person();这是一个具体的人,可以改变属性
        person.name = "葛老头";
    }
}

class Person{
    String name;//默认值为null
}