synchronized (Singleton.class) { if (singleton == null) { singleton = new Singleton(); }
时间: 2024-02-15 07:47:32 浏览: 84
单例 模式 singleton
这段代码是一个经典的单例模式的实现方式。在多线程环境下,如果没有同步控制,在多线程并发访问时可能会创建多个实例,违反了单例模式的原则。所以在这段代码中,使用了 synchronized 关键字对 Singleton 类进行同步,确保在同一时刻只有一个线程能够访问该类的实例化过程。如果 singleton 对象为 null,才会创建一个新的 Singleton 对象并将其赋值给 singleton 变量。这种方式可以保证在多线程环境下,也能够正确实现单例模式。
阅读全文