[英]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.