我想在类中定义一些常量,用于时间管理。 我的类(class)如下所示:
public class TimeManager {
public static final long SECOND = 1000;
public static final long MINUTE = SECOND * 60;
public static final long HOUR = MINUTE * 60;
public static final long DAY = HOUR * 24;
.
.
.
}
这些常量定义是否存在性能问题?这些值是由 Java 编译器计算的吗?
最佳答案
是的,确实如此:
$ javap -constants TimeManager
Compiled from "TimeManager.java"
public class TimeManager {
public static final long SECOND = 1000l;
public static final long MINUTE = 60000l;
public static final long HOUR = 3600000l;
public static final long DAY = 86400000l;
public TimeManager();
}
正如评论者所指出的,但这并不重要。
关于java - Java编译器是否优化常量变量计算?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43808252/