public class Singleton { //volatile变量,用来确保将变量的更新操作通知到其他线程 private volatile static Singleton instance=null; private Singleton() {} public static Singleton getInstance() { if (instance==null) { //synchronized Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。 synchronized (Singleton.class) { if (instance==null) { instance=new Singleton(); } } } return instance; } }