我正在使用 Javassist 构建一个运行时类。我正在创建一个 CtMethod:
CtMethod m = CtMethod.make(constructMethodSource, bclass);
在“constructMethodSource”里面是这一行,它是合法的 Java 代码行:
java.lang.Object[] args = new java.lang.Object[] {};
这样,make() 会引发语法错误:
[source error] syntax error near "bject[] {};"
我使用它,而是以不同的方式初始化我的空数组:
java.lang.Object[] args = new java.lang.Object[0];
这让 Javassist 很高兴,但我想知道为什么 Javassist 在第一行就卡住了?这是一个已知的限制或错误还是我在做一些愚蠢的事情?