○#regionUsingdirectiv...... #region Using directives using System; using System.Collections.Generic; using System.Text; using System.Reflection; #endregion namespace GenericsSingleton { /// /// 单例范型 /// /// public class Singleton { private static T _instance; public Singleton() { } public static T Instance { get { if (_instance == null) { //获得实例,使用这个方法的前提是T要有公有的、无参数的构造函数 _instance = (T)System.Activator.CreateInstance(typeof(T)); } return _instance; } } } /// /// 要实现单例的类 /// public class Foo { private int count = 0; public int Count { get { count++; return count; } } } /// /// 主函数 /// class Program { static void Main(string[] args) { //连续调用三次如果值是递增的话说明三次调用都是同一个实例 Console.WriteLine(Singleton Console.WriteLine(Singleton Console.WriteLine(Singleton Console.ReadLine(); } } } |
|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )
GMT+8, 2024-9-29 19:24 , Processed in 0.133772 second(s), 12 queries , Gzip On, MemCache On.
Powered by Discuz! X3.5
© 2001-2023 Discuz! Team.