Java编译器优化机制中有这么一条:对于条件表达式中永远为false的语句,编译器将不对条件覆盖的代码段生成字节码。java
final boolean debug = false; if(debug){ // debug必须是final类型的,下面的代码才不会在编译成字节码 printf("I'm in debug mode!"); }