解读设计模式----单例模式(Singleton Pattern)
单例模式可以保证一个类有且只有一个实例,并提供一个访问它的全局访问点.在程序设计中,有很多情况需要确保一个类只能有一个实例.从这句话可以看出,Singleton模式的核心:如何控制用户使用new对一个类的实例构造器的任意调用。如何绕过常规的构造器,提供一种机制来保证一个类只有一个实例?这应该是类设计者的责任,而不是使用者的责任。
一、单例模式意图
保证一个类有且只有一个实例,并提供一个访问它的全局访问点。
二、单例模式UML图(该图来至http://www.dofactory.com/)

讯享网
三、示例解说单例模式
看看下面这个简单的示例:

namespace DesignPattern.Singleton2
{
3
public class Singleton4
{
5
//静态私有属性6
private static Singleton instance;7

8
///
<
summary
>
9
/// 私有构造器--让类的使用者调用不到此构造器10
///
</
summary
>
11
private Singleton()12
{ }13

14
public static Singleton Instance15
{
16
get 17
{
18
if (instance == null)19
{
20
instance = new Singleton();21
}22
return instance; //返回的总是第一次实例的对象23
}24
}25
}26

27
//测试类28
class TestSingleton29
{
30
public static void Main2(string[] args)31
{
32
Singleton t1 = Singleton.Instance;33
Singleton t2 = Singleton.Instance;34
Console.WriteLine(object.ReferenceEquals(t1, t2) == true);35
}36
}37
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/18909.html