Java[设计模式]之美——单例模式

来源:互联网 发布:程序员的数学三部曲 编辑:程序博客网 时间:2024/05/13 02:27

单例对象(Singleton)是一种常用的设计模式。在Java应用中,单例对象能保证在一个JVM中,该对象只有一个实例存在,并通过这个唯一实例来向系统提供实例行为。这样的模式有几个好处:

1、某些类创建比较频繁,对于一些大型的对象,这是一笔很大的系统开销。

2、省去了new操作符,降低了系统内存的使用频率,减轻GC压力。

3、有些类如交易所的核心交易引擎,控制着交易流程,如果该类可以创建多个的话,系统完全乱了。应用场合是系统需要唯一该类的实例,比如说资源管理器等。

单例模式类图:

       

下面是示例代码:

public class Singleton {// none-lazy loadprivate static Singleton singleton = new Singleton();private Singleton(){}public static Singleton getSingletonInstance(){return singleton;}// lazy load/*private static Singleton singleton = null;    private Singleton() {    }    public static Singleton getInstance() {        if (singleton == null) {            synchronized (Singleton.class) {                if (singleton == null) {                    singleton = new Singleton();                }            }        }        return singleton;    }*/}


原创粉丝点击