jvm 把Boolean类型的值flag当做int类型处理。
Foo.java:
public class Foo{
public static void main(String [] args){
boolean flag = true;
if(flag) System.out.println("Hello Java!");
if(flag == true) System.out.println("Hello,JVM!");
}
}
- 由 class 文件生成 jasm 文件:
java -jar asmtools.jar jdis Foo.class > Foo.jasm
修改jasm文件:
执行反编译:
java -jar jd-gui-1.6.6.jar
File 打开Foo.class文件:b修改为2
重新执行java Foo: