Java If(false)编译

我正在使用Tomcat开发一个动态Web项目。拥有全局标志是很有用的,这是我在开发服务器和部署服务器之间唯一要做的更改。该标志的最大用途是与print语句一起使用。

public class Debug {

public final static boolean DEVEL = true;

public static void print(String message){

if(DEVEL){

System.out.println(message);

}

}

}

我的问题是,java将编译出打印语句。即,如果devel标签为false,则消息显然不会打印,但会包含在类文件中(devel是最终的)。这是效率问题。我听说Java编译器非常聪明,但是它将对此进行补充。

回答:

使用“最终”属性(如您所做的那样),它将编译出代码:

public static final boolean DEVEL = false;

您可以通过grepping结果类文件来检查是否只有在编译代码后才会出现的字符串。

以上是 Java If(false)编译 的全部内容, 来源链接: utcz.com/qa/397936.html

回到顶部