对于我的许多java项目,我广泛使用数据库,我通常做的是拥有一个property.xml文件来保存我的所有字符串和设置.
然后我会有一个类CNST来保存与xml文件中的静态常量相对应的所有静态常量.
这些常量在程序启动时由xml文件初始化一次,并在程序中的任何地方用作全局变量.
然而,在阅读了这些日子的许多文章之后,似乎使用全局变量并不是一个好习惯.所以,任何人都可以指出这种情况的良好做法吗?谢谢.
一般来说,在可能的情况下应避免使用全局变量 => 然而,如果它们是常量,则这不是问题。对于像这样的情况,当您(大概)在一开始初始化此全局设置包装对象并且之后没有任何更改时,有以下选项:
public static final中初始化的常量 ( )staticprivate static final在块中初始化变量static并通过 getters 公开private final创建一个单例并通过 getter 公开变量第二点和第三点比第一点有优势,在 getter 方法中,您封装了变量的值,并且可以更改/插入代码来操作要返回到调用方法的值,而不会影响依赖于它的(调用)代码。