JAVA --实用单例模式

来源:互联网 发布:defender 禁止软件联网 编辑:程序博客网 时间:2024/05/20 20:00

单例模式分懒汉式、饿汉式,是在有关JAVA语言使用中,是特别常用的设计模式,但是得考虑线程问题。


基本实现思路

1、构造函数私有化
2、提供一个静态类,允许调用


记录如下几种写法方式:

1、懒汉式 – 这种是最常用的(线程安全):

public class SingleClass {    private static SingleClass instance;    private SingleClass(){}    public static SingleClass getInstance(){        if(instance == null){            synchronized (SingleClass.class){                if(instance == null){                    instance = new SingleClass();                }            }        }        return instance;    }}

2、静态内部类(线程安全)

public class SingleClass {    private static SingleClass instance;    private SingleClass(){}    public static SingleClass getInstance(){       return SingleClassHolder.INSTANCE;    }    private static class SingleClassHolder {        private static final SingleClass INSTANCE = new SingleClass();    }}