Java If(false) Compile
我正在使用Tomcat开发一个动态Web项目。拥有一个全局标志很有用,这是我在开发和部署服务器之间唯一需要更改的内容。该标志的最大用途是打印语句。
public class Debug {
public final static boolean DEVEL = true;
public static void print(String message){
if(DEVEL){
System.out.println(message);
}
}
}
我的问题是,java会编译出打印语句吗?即,如果 devel 标签是假的,则消息显然不会打印出来,但它们会包含在类文件中(devel 是最终的)。这是一个效率问题。我听说java编译器非常聪明,但它会接受这一点吗?