測試開發全棧-重新拾起Java核心基礎」(8)類作為傳參和返回

今天又重新聽了Java基礎+進階的影片,嘗試不看影片自己寫下Java中將類作為方法傳參和返回的程式碼,發現還是有很多問題。

第一個,將類的物件作為方法的引數傳入,直接上程式碼

package com。liepin。rim。org。day06;public class Four { public static void main(String[] args){ Three three = new Three(); String str = three。name; int num = three。num;// System。out。println(num);// System。out。println(str); //這個Three類的物件three中儲存的內容為: str和num method(three);// Three four = getThree(); //左邊進行接收,賦值呼叫// System。out。println(four。name);// System。out。println(four。num); } public static void method(Three three){ //類的方法作為引數 System。out。println(three。name); System。out。println(three。num); }// public static Three getThree(){// Three three = new Three();// three。num = 100;// three。name = “world!”;// return three; //誰呼叫了我,我就把類的物件three的地址傳給誰// }}

package com。liepin。rim。org。day06;public class Three { int num = 1; String name = “Hello”;}

首先,建立一個類 Three, 在類中定義兩個成員變數:

int num = 1;

String name = “Hellol”;

然後新建一個類,在新建類的main方法中對第一個類進行例項化

Three three = new Three();

然後列印該類的物件 three。num和three。name

接著新建一個方法 method() 將 three作為引數傳入, 引數型別是類Three

public static void method(Three three)

第二個,將類作為方法的返回,誰呼叫了我,我就把類的物件three的地址傳給誰,具體看程式碼

package com。liepin。rim。org。day06;public class Four { public static void main(String[] args){// Three three = new Three();// String str = three。name;// int num = three。num;// System。out。println(num);// System。out。println(str); //這個Three類的物件three中儲存的內容為: str和num //method(three); Three four = getThree(); //左邊進行接收,賦值呼叫 System。out。println(four。name); System。out。println(four。num); } public static void method(Three three){ //類的方法作為引數 System。out。println(three。name); System。out。println(three。num); } public static Three getThree(){ Three three = new Three(); three。num = 100; three。name = “world!”; return three; //誰呼叫了我,我就把類的物件three的地址傳給誰 }}

新建一個有返回的方法,對第一個類進行例項化

Three three = new Three();

然後對第一個類中原有的成員變數進行重新賦值,最後返回 第一個類的物件

在main方法中再例項化一次,將有返回的方法賦值給新例項化的物件

Three four = getThree();

然後列印這個物件呼叫的變數。這時候打印出來的就是新的物件呼叫的成員變數

這塊之前一直沒有完全弄明白。這次算是明白了,但是還是需要多做題來鞏固下。

所以為啥測試中掌握Python語言的同學居多,也可以理解了。因為面向物件這塊還有Java的一些基本規則,理解起來確實有難度。

大家加油~