4
當用@Advice
攔截方法的實現時,是否可以訪問局部變量?是否可以通過ByteBuddy的建議訪問本地變量?
當用@Advice
攔截方法的實現時,是否可以訪問局部變量?是否可以通過ByteBuddy的建議訪問本地變量?
不,這不是,這是部分的設計。一個方法的實現應該是一個私人的細節,而通知在調用之後和之前添加代碼,其中方法的簽名是其API的一部分。
在某些情況下,Byte Buddy可能會提供一種替換特定字段和方法訪問的可能性,但以某種方式不依賴於實現。
爲了與明確的字節代碼混合,Byte Buddy提供AsmVisitorWrapper
以直接使用ASM API,它比Byte Buddy的高級API更適合字節代碼級別的操作。