4

为一个愚蠢的问题道歉。

我正在开发一个 JavaFX 应用程序。

我想设置一个'全局'布尔类型变量'DebugMode',这样当一个自定义(我的意思是自定义的,或者自己制作的)异常被抛出时,getMessage()函数可以检查DebugMode变量以查看DebugMode是否为放。

如果 DebugMode 为 'true',则异常可以提供详细的调试消息,或者只是为最终用户提供用户友好的消息。

在 java 中是否可能,就像 PHP 中的 $GLOBAL 变量一样?或者有没有其他方法可以为开发人员和最终用户提供两种不同的异常消息?

4

2 回答 2

6

选择 -D 参数(JVM 属性)。这意味着,当我从命令行启动应用程序时。我可以做类似的事情,

     java Hello -DdetailedDebugMode=true

在 java 代码中,我可以执行以下操作:

  printError(Throwable t) {
      if(System.getProperties("detailedDebugMode") != null && "true".equalsIgnoreCase(System.getProperties("detailedDebugMode"))) {
          LOG.error("Here is the message", e);
      } else {
          LOG.error("Here is the message only");
      }
  }
于 2013-04-26T06:19:03.083 回答
1

你可以在java中使用静态变量。看看Understanding Instance and Class Members

于 2013-04-26T06:10:26.827 回答