根據Java編譯器的優化和布爾常量(final Boolean)的機制,Java也能夠提供條件編譯。對於條件設為false的語句,編譯器將不對條件覆蓋的代碼段生成字節碼。
//IfDef.Java
final boolean DEBUG=false;
System.out.println(“Hello,World”);
if(DEBUG)
{
System.out.println(“Hello,World”);
}
注意:必須是final類型的。
如果if(DEBUG)中的代碼量大的話,你可以看看當DEBUG設置為“true”、“false”時生成IfDef.class文件大小有何變化。