在讲Singleton时我举例时用过这样一段代码:
public class SingletonDemo { private static class SingletonHolder{ private static SingletonDemo instance=new SingletonDemo(); } private SingletonDemo(){ System.out.println("Singleton has loaded"); } public static SingletonDemo getInstance(){ return SingletonHolder.instance; } }
相信你一定发现了一个问题:外部类中的getInstance()方法调用了内部类SingletonHolder中的private变量instance。