JAVA值传递和引用传递

值传递

在调用方法时,将实参传递给了形参,但方法中无法通过改变形参直接改变实参。

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

引用传递

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

public class Demo{
    public static void main(String[] args) {
        Person person = new Person();
        System.out.println(person.name); //null
        change(person);
        System.out.println(person.name);//BB
    }
    public static void change(Person person){
        //person是一个对象:指向的 --- >Person person = new Person();这是一个具体的人,可以改变属性!
        person.name="BB";
    }
}
//定义了一个Person类,有一个属性:name
class Person{
	String name: //nuLL
}

与 C语言 指针联系学习。

引用传递:指针。

posted on 2024-07-22 16:48  7007x  阅读(2)  评论(0编辑  收藏  举报