java设计模式之单例模式

来源:互联网 发布:python time 加减 编辑:程序博客网 时间:2024/06/05 00:26
概念:
    Java中单例模式是一种常见的设计模式,单例模式的写法有几种,我主要了解两种:懒汉模式,饿汉模式。
单例模式的特点:
    1、单例类只能有一个实例。
    2、单例类必须自己创建自己的唯一实例。
    3、单例类必须给所有其他对象提供这一实例。
    单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。
懒汉模式:
public class Singleton {
    //懒汉模式
    private Singleton(){}
    private static final class lazyHolder{
        private static final Singleton INSTANCE = new Singleton();
    }
    public static final Singleton getInstance(){
        return lazyHolder.INSTANCE;
    }
}  
这是懒汉模式下,考虑线程安全,性能最好的写法。
饿汉模式:
public class Singleton {
    //饿汉模式
    private Singleton(){}
    private static final Singleton instance = new Singleton();
    public static Singleton getInstance(){
        return instance;
    }
} 
饿汉模式创建的同时就已经创建了一个静态的变量供系统使用,以后不再改变,所以天生是线程安全的。 
0 0
原创粉丝点击