當方法的引數是類名
當方法的引數是類名
public void print(Student s){}//print(new Student()):
如果你看到了一個方法的形式引數是一個類型別(引用型別),這裡其實需要的是該類的物件。
import java.net.StandardSocketOptions; public class Demo_Student { public static void main(String[] args){ print(10);//因為print方法返回值為void,所以不能用輸出呼叫也不能用賦值呼叫,只能直接呼叫。 Student s = new Student(); // 建立物件,並將物件的地址值賦值給s. print(s);//呼叫print方法,並將將地址s賦值給了print方法裡的形參stu. } //基本資料型別的呼叫 public static void print(int x){ //基本資料型別當做形參 System.out.println(x); } //引用資料型別的呼叫 public static void print(Student stu){ //引用資料型別當做形參stu為s的地址 stu.name = "張三"; stu.age = 23; stu.speak(); } } class Student{ String name; int age; public void speak(){ System.out.println(name + "...." + age); } } 結果: 10 張三....23
總結:引用資料型別傳遞的引數為地址值,基本資料型別傳遞的引數為值。