首页 > 其他 > 详细

设计模式--单例模式

时间:2017-09-13 00:55:30      阅读:288      评论:0      收藏:0      [点我收藏+]

单例模式 Singleton Pattern
意图:确保一个类只有一个实例,并对该实例提供全局访问接口
应用场景:
1)在多个客户端会话中共享同一个类的某个实例;
2)在某个类只有一个实例对象,或有限个实例对象

好处或缺点:
1)需要保证多线程对单例对象的访问同步
类结构:
类实例应该放在类内部完成,保证实例的唯一性和私有性;
注意:
创建实例方法是私有的;
类结构:
Singleton
static s:Singleton
Singleton()
CreateInstance():Singleton
static getInstance():Singleton

调用方法:
1.类方法的调用--类方法
2.实例方法


getInstance()实现:
if(s == NULL){
s = CreateInstance();
}
return s;

设计问题:Configuration类是COS系统的配置类,只能有一个实例对象,并共享于所有客户端,如何设计该类?
类结构:
Configuration
-$c:Configuration
-Configuration()
-$CreateInstance():Configuration
+$getInstance():Configuration

关键代码:

    public class Configuration
    {
        private static Configuration c;
        private Configuration() {}
        private static Configuration CreateInstance(){
        //创建对象
        }
        public static Configuration getInstance()
        {
            if (c == NULL)
            {
                c = CreateInstance();
            }
            return c;
        }
    }

 

设计模式--单例模式

原文:http://www.cnblogs.com/hujianglang/p/7512860.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!