值传递&引用传递
值传递
package com.oop.demo01;
import java.sql.SQLOutput;
/**
* @author torch
* @create 2022-01-12 16:32
*
* 值传递
*
*/
public class Demo04 {
public static void main(String[] args) {
int a = 1;
System.out.println(a);
Demo04.change(a); //可以在此处打断点来Debug看值传递过程
System.out.println(a);
}
//返回值为空(void)
public static void change(int a){
a = 10;
}
}
引用传递
package com.oop.demo01;
/**
* @author torch
* @create 2022-01-12 16:35
*
* 引用传递:对象,本质还是值传递
*
*/
public class Demo05 {
public static void main(String[] args) {
Person person = new Person();
System.out.println(person.name);
Demo05.change(person);
System.out.println(person.name);
}
public static void change(Person person){
//person是一个对象:指向传递 ---> Person person = new Person(); 这是一个具体的人,可以改变属性!
person.name = "torch";
}
}
//定义了一个Person类,有一个属性:name
class Person{
String name;//null
}
新手上路,有问题还请评论区多多指教!