码迷,mamicode.com
首页 > 其他好文 > 详细

【设计模式】——单例模式

时间:2015-11-11 20:38:46      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:

转自:xingoo

单例模式:

  保证类仅有一个实例,并且可以供全局使用。这个类自己创建对象,并且提供对外公开的调用方法。(构造方法私有)

使用场景:

  当类只有一个实例,并且可以从一个固定的访问点访问它时。

代码展示:

【饿汉模式】

public class Singleton {
    private static final Singleton singleton = new Singleton();   //此处为final变量  不可以修改
    private Singleton(){
        /**
         * 构造方法私有化
         */
    }
    /*
     * 返回实例,方法为static
     */
    public static Singleton getInstance(){
        return singleton;
    }
}

【懒汉模式】

public class Singleton2 {
    private static  Singleton2 singleton = null;
    private Singleton2(){
        /**
         * 构造方法私有化
         */
    }
    /*
     * 同步方法synchronized ,当需要实例的时候采取创建, 返回实例,方法为static
     */
    public static synchronized Singleton2 getInstance(){
        if(singleton==null){
            singleton = new Singleton2();
        }
        return singleton;
    }
}

 

【设计模式】——单例模式

标签:

原文地址:http://www.cnblogs.com/doudingbest/p/4957264.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!