设计模式之单例模式(代码)

来源:互联网 发布:网络舆论引导员工资单 编辑:程序博客网 时间:2024/05/29 19:28
单例模式
(1)简单单例模式
package com.alan.singleton;public class SimpleSingleton {private static SimpleSingleton simpleSingleton = new SimpleSingleton() ;public static SimpleSingleton getInstance(){return simpleSingleton ;}}

(2)具有延迟加载功能的单例模式
package com.alan.singleton;public class LazySingleton {private static LazySingleton lazySingleton = null ;public static LazySingleton getInstance(){if(lazySingleton ==null){lazySingleton = new LazySingleton() ;}return lazySingleton ;}}

(3)多线程下的单例模式
package com.alan.singleton;


public class MultiThreadSingleton {private static MultiThreadSingleton multiThreadSingleton ;public static MultiThreadSingleton getInstance(){if(multiThreadSingleton ==null){synchronized(multiThreadSingleton){multiThreadSingleton = new MultiThreadSingleton() ;}}return multiThreadSingleton ;}}