编译器构造与Java环境相关的编译
我在这里看到了答案,您可以在Java中使用final static const变量来防止代码部分被编译。我对这种方法的担心是我很健忘-(在签入代码之前,我可能会忘记将变量设置回false,这可能会对项目产生负面影响
在C/C++中,可以指定用于控制代码编译的环境宏。例如:
#if defined(_PROFILE)
Time startTime;
#endif
... run some code ...
#if defined(_PROFILE)
Time endTime;
std::cout << "Code took " << endTime - startTime << " seconds\n";
#endif
因此,只有在有人专门定义了_PROFILE宏的情况下,才能编译评测测试代码,该宏可以作为编译器命令行上的选项传递,并且没有意外检入的风险
有没有办法在Java中模仿这一点
# 1 楼答案
可以使用运行时属性。由于Java是动态编译的,所以其效果大致相同
你可以使用稍微粗糙的