我最近一直在學習java字節碼,並且我已經瞭解了它的大部分內容,但我對如何計算本地變量計數感到困惑。我認爲這將只是總的局部變量,但翻翻字節碼如何計算方法中的局部變量java字節碼
public int testFail()
{
return 1;
}
當這個代碼生成1個局部變量,但我認爲它應該是,因爲沒有局部變量定義零個局部變量。
此外,此方法還會生成一個局部變量,但它具有比上一個示例更多的局部變量。
最後這種方法
public static int testFail(int a, int b)
{
return a+b;
}
gnerates在字節碼中兩個本地變量。
public static int testFail(int a)
{
return a;
}
以上兩種方法都是一樣的。 –
對不起,我修正了我發佈了兩種方法 – Popgalop
看看這些鏈接http://arhipov.blogspot.com/2011/01/java-bytecode-fundamentals.html和http://zeroturnaround.com/rebellabs/java-字節碼基本面使用對象 - 和調用的方法/#!/ –