读书人

Java中的条件编译有关问题

发布时间: 2013-09-06 10:17:17 作者: rapoo

Java中的条件编译问题
在网上看到Java中也有种类似C语言条件编译的方法,如下:

class test {
final boolean DEBUG=false;

void fuc() {
if(DEBUG)
{
System.out.println(“Hello,World”);
}
}

}

有一点我不明白的是编译以后fuc这个函数是不是也不会被编译?还是fuc这个函数还有,但是里面是空的?
多谢! java条件编译
[解决办法]
有fuc函数,里面是空的。

使用jdk的bin目录下的javap命令查看class文件:
javap -verbose <class文件名>
如:
javap -verbose Test
如果方法fuc被编译了,可看到,可以用一个有条件编译的class和一个没有条件编译的class对比着看,就看出不同了。

如果了解class文件结构,还可以直接使用二进制文件查看器去观察class文件。

读书人网 >Java相关

热点推荐