簡體   English   中英

在Java中的void方法結束時“return;”對性能有任何影響嗎?

[英]Does “return;” at the end of a void method in Java have ANY impact on performance?

這聽起來像是一個愚蠢的問題,但我很快就會明白這一點。 無論如何,如果我要加return; 在Java中的void方法結束時,是否會對性能產生任何(我的意思是ANY)影響? 例如:

原始方法:

public void method(){
   int i = 1;
}

新方法:

public void method(){

   int i = 1;
   return;
}

現在,顯然這對程序的性能沒有任何重大影響,但它會有一個微不足道的影響嗎? 如果它不以任何方式改變性能,它會改變其他什么嗎? (就像編譯程序的大小一樣?)

如果你的意思是運行時性能,不; 編譯器發出的字節碼與是否相同。 這很容易檢查:編譯它,使用javac -p ClassName查看反編譯版本,然后用它編譯,並執行相同操作。 你會發現它們是相同的(兩者都有return字節碼)。

如果它不以任何方式改變性能,它會改變其他什么嗎? (就像編譯程序的大小一樣?)

不。 字節碼與大小相同。

實際上,如果你有一個沒有任何return語句的void方法,編譯器將始終在它結束時生成一個返回指令。 所以我覺得它什么都沒改變。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM