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

Java 我可以使用动态变量(如时间)来构造静态最终变量(常量)吗,java,android,exception,constants,static-variables,Java,Android,Exception,Constants,Static Variables,对于构建文件名,我按照下面提到的方式构建文件名 public static final String JSON_LOG_FILE_NAME = "JSON" +getUserName() + System.currentTimeMillis() + ".txt"; 这是工作到昨天,现在它是例外的序列化错误。 我的疑问是,是否可以使用android设备时间和数据库值等动态值作为静态最终变量的一部分。我建议使用ch.qos.logback.classic.Logger根据时间生成文件 下面

对于构建文件名,我按照下面提到的方式构建文件名

public static final String JSON_LOG_FILE_NAME = "JSON"
  +getUserName() + System.currentTimeMillis()
  + ".txt";
这是工作到昨天,现在它是例外的序列化错误。
我的疑问是,是否可以使用android设备时间和数据库值等动态值作为静态最终变量的一部分。

我建议使用
ch.qos.logback.classic.Logger
根据时间生成文件

下面是完整的示例。希望这对你有帮助


如果希望根据时间修改,则使用final没有任何意义

您可以创建最后一个变量,如“JSON”,并可以使用连接来命名文件


对于您的情况:上述逻辑是有效的,即文件名仅在加载类时更改,而不是每次使用变量时更改。这个值是恒定的,当你使用它时,你不会发现时间的价值是动态变化的

不仅仅是时间问题,还有从Db中检索的getUsername()方法。我使用的方法正确吗?您的编辑被拒绝了。如果要更改答案中的代码,请检查用户的配置文件。如果他们现在在场,请发表评论。如果他们很久没有来过这里,就去编辑,并在编辑评论中提到这一点。如果被拒绝,在答案上留下评论和建议。如果你的声誉达到2000,你可以不经审查就进行这些类型的编辑。