在Java中,是否有一种方法(在运行时)可以获取定义特定类的字节码?
换句话说,是否有一种方法可以获取加载特定类时传递给ClassLoader.defineClass(String name, byte[] b, int off, int len)
的 byte[]
数组?我发现这个方法声明为final
,因此创建一个自定义的ClassLoader
来拦截类定义似乎不可行。
过去,我使用类的ClassLoader
通过getResourceAsStream(String)
方法获取字节码,但我希望有一个更加规范的解决方案。
getResourceAsStream
时不返回它。 - Adam Paynter