4
我使用ASM API進行Java字節碼instrumantation,我希望能夠確定在每次訪問任何數組時訪問哪個數組(每個數組的名稱)。在Java字節碼中獲取堆棧操作數的arrayref
我有兩個問題: - 讓我們以iastore指示爲例。 arrayref放在操作數堆棧下的兩個其他變量 - 值和索引。我如何得到arrayref而不損壞堆棧(我不能在堆棧中複製兩個以上的頂層變量)? 我想從棧中彈出指數和價值,並將其保存的地方,然後得到數組引用,並最終推動指數和值回到堆棧,但我真的不知道如何做到這一點?
- 我想從arrayref(一旦擁有它)得到數組的名稱(用戶聲明該數組稱爲它的名稱)。
在此先感謝。
你是什麼意思的「陣列的名稱」? – 2011-01-12 19:22:28
您可以從類文件中獲取變量名稱。然而,許多變量(本地和成員)可以指向相同的數組對象,所以你想要哪個變量名? – Anon 2011-01-12 19:49:43