我可以使用动态变量(如时间)来构造静态最终变量(常量)

时间:2015-03-11 04:51:36

标签: java android exception constants static-variables

对于构建文件名,我正在构建如下所述的名称

public static final String JSON_LOG_FILE_NAME = "JSON"
  +getUserName() + System.currentTimeMillis()
  + ".txt";

这一直工作到昨天,现在它正在给予异常化的错误。 我的疑问是可以使用动态值,如android设备时间和数据库值作为静态最终变量的一部分。

2 个答案:

答案 0 :(得分:2)

当您希望根据时间修改 最终 时没有任何意义。

您可以创建一个像“JSON”这样的最终变量,并且可以使用连接来命名该文件。

对于您的案例:上述逻辑有效,即文件名仅在加载类时更改,而不是每次使用变量时都更改。该值是常量,当您使用它时,您不会发现动态变化的值。

答案 1 :(得分:0)

我建议使用ch.qos.logback.classic.Logger按时生成文件。

这是完整的例子。希望这可以帮助你

Logback - set log file name programmatically