首页 > 代码库 > 单例模式
单例模式
在CommonUtility文件中写这个方法
/// 把类的构造函数访问权限设置为private,则该类不能在外界被new了
/// 在当前类型中创建一个静态的方法,用该静态方法来返回一个对象
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace CommonUtility 8 { 9 public class Singleton<T> where T : class,new() 10 { 11 /// <summary> 12 /// 单列模式 13 /// </summary> 14 /// <typeparam name="T"></typeparam> 15 private static T _instance = null; 16 public static readonly Object obj = new object(); 17 public static T Instance() 18 { 19 if (_instance == null) 20 { 21 lock (obj) 22 { 23 return _instance = Activator.CreateInstance<T>(); 24 } 25 } 26 return _instance; 27 } 28 } 29 }
在BLL或者DAL调用时需要先引用CommonUtility。
1 public static new CContractMgrBLL Instance 2 { 3 get { return Singleton<CContractMgrBLL>.Instance(); } 4 }
作用:单例模式就是保证在整个应用程序的生命周期中,在任何时刻,被指定的类只有一个实例,并为客户程序提供一个获取该实例的全局访问点。
单例模式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。