- public class JiveProperties {
- private static final String LOAD_PROPERTIES = "SELECT name, propValue FROM ofProperty";
- private JiveProperties() {
- System.out.println("JiveProperties constructor");
- }
- static {
- System.out.println("static block");
- }
- private static class JivePropertyHolder {
- static {
- System.out.println("initing1");
- }
- private static final String LOAD_PROPERTIES = "Inner Static Class...";
- private JivePropertyHolder() {
- System.out.println("inner class...");
- }
- private static final JiveProperties instance = new JiveProperties();
- static {
- System.out.println("initing2");
- }
- }
- public static JiveProperties getInstance() {
- return JivePropertyHolder.instance;
- }
- public static void main(String[] args) {
- System.out.println(JiveProperties.JivePropertyHolder.LOAD_PROPERTIES);
- }
- }
结果:
static block
Inner Static Class...
因此初步判断是迟加载且是线程安全的(由final保证)
http://dracularking.iteye.com/blog/677801
浙公网安备 33010602011771号