我需要final
个字段作为我的应用配置constants
。
我知道3种不同的方式,但我不知道哪种方式最好,在这种情况下JVM行为是什么(从内存管理和内存问题的角度来看)
1。使用静态字段
public class Constants {
public static final String URL = "https://www.google.com";
}
//usage
Constants.URL
2。使用接口
public interface Constants {
String URL = "https://www.google.com";
}
//usage
Constants.URL
第3。使用单例设计模式(非静态)
public class Constants {
public final String URL = "https://www.google.com";
}
//usage
public static Constants instance = new Constants();
Constants.instance.URL;
答案 0 :(得分:2)
它们都没有,使用和枚举类型。请记住,第二个选项确实是不可取的,因为接口的最重要的一点是定义一个新类型。
顺便说一下,enums是单例(你可以像那样使用它们),默认情况下确实是线程安全的。
例如:
{{1}}
这应该适用于整个应用程序的真正全局消息/常量/等。