首先我們來看這一段代碼
public class mytest {
public static void main(String[] args) {
System.out.println(new mytest());
}
public String toString() {
System.out.println("print");
return "return";
}
}
請問以上代碼的輸出順序是什么?
A print return
B return print
C return
D print
E 編譯通過不了
==============================
仔細思考以上內容
=======================================
答案是 A

首先輸出print 再輸出 return
這時大家就好奇了為什么同樣是輸出為什么輸出的是print return ,而不是return print呢
原因是:程式首先執行了new mytest()實體化物件,但mytest類和 toString構成了重寫
所以會優先呼叫列印輸出print,當列印執行完之后再回傳return 所以最后輸出 print return
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/344215.html
標籤:java
