Java中的#ifdef等价物?

use*_*764 2 java android conditional-compilation

可能重复:
Java中的#ifdef #ifndef

我试图通过使用类似这样的东西在我的Android代码中实现一些调试消息:

private static final boolean DEBUG = false;

if (DEBUG) {
// some code
}
Run Code Online (Sandbox Code Playgroud)

但是,在编译时我不断收到"非法表达式启动"错误.final boolean有效,但既不是静态也不是私有.

我在方法中声明了DEBUG变量.如果有一种方法可以使这个全局化,以便同一个Java文件中的所有内容都能看到它而不是我必须在每个需要它的方法中声明它,那么也会感激不尽.

谢谢!

Bhe*_*ung 5

如果希望变量对该类中的所有方法可见,则必须在类级别声明变量.

如果您在方法中执行以下操作:

private static final boolean DEBUG = false;
Run Code Online (Sandbox Code Playgroud)

问题是修饰符privatestatic不允许在方法中使用.


实际上,你应该使用logger来达到这种目的.

  • +1用于推荐使用记录器 (5认同)