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

单例模式

时间:2016-07-15 13:43:39      阅读:105      评论:0      收藏:0      [点我收藏+]

标签:

第一种形式: 定义一个类,它的构造函数为private的,它有一个static的private的该类变量,在类初始化时实例话,通过一个public的getInstance方法获取对它的引用,继而调用其中的方法。

public class Singleton{
    //private 只供内部调用
    private static Singleton instance = new Singleton();
    //提供了一个供外部访问本class的静态方法,可以直接访问  
    public static Singleton getinstance(){
        return instance;
    }    
}

第二种形式:

public class Singleton{
    //private 只供内部调用
    private static Singleton instance = null;

    public static synchronized Singleton getInstance(){
        //这个方法比上面有所改进,不用每次都进行生成对象,只是第一次使用时生成实例,提高了效率!
        if (instance==null){
            instance = new Singleton();
        }
        return instance; 
    }    
}

其他形式: 定义一个类,它的构造函数为private的,所有方法为static的。一般认为第一种形式要更加安全些。

单例模式

标签:

原文地址:http://www.cnblogs.com/janenan/p/5673166.html

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