Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想计算单个类中的总操作数、总运算符、唯一操作数和唯一运算符,以字节码的形式出现。
下面的问题是关于同样的问题,但对于源代码:如何计算java类文件中的所有运算符和操作数
它明确指出,这些数字不必在那里相加。
在互联网上进行 N 次搜索后,我仍然无法从 java 字节码中找出这些统计数据。 我遇到了 ASM、BCEL、Code Pro 之类的词,但这确实解决了目的。
我找到了一些用于从源代码计算这些指标的开源工具,但找不到适用于字节码的开源工具。
无法从字节码计算源级操作数,因为编译是一个有损过程。例如,常量表达式在编译时计算。如果您在字节码中看到 3,则无法知道它最初不是 (1 + 1<<129)|0,比如说。