所谓的条件编译,就是指通过某种特定的条件控制方法,来控制程序中哪些程序代码给编译器做编译(JAVA中即可理解成生成class文件),哪些程序代码不做编译。
JAVA中可以通过布尔常量(final boolean)的机制,来得到条件编译的效果。如下代码(注意必须使用final来定义布尔常量):
package com.test; public class test { public static void main(String[] args) throws InterruptedException { final boolean DEBUG = false; System.out.println("aaa"); if (DEBUG) { System.out.println("bbb"); //此处不被编译 } } }
可以通过置换不同的DEBUG值,比较编译出来的class文件中常量池的明显变化。