zoukankan      html  css  js  c++  java
  • C# 范型编程

    Using directives

    namespace GenericsSingleton
    {
        
    /// <summary>
        
    /// 单例范型
        
    /// </summary>
        
    /// <typeparam name="T"></typeparam>

        public class Singleton<T>
        
    {
            
    private static T _instance;

            
    public Singleton()
            
    {
            }


            
    public static T Instance
            
    {
                
    get
                
    {
                    
    if (_instance == null)
                    
    {  

                       
    //获得实例,使用这个方法的前提是T要有公有的、无参数的构造函数               

                       _instance 
    = (T)System.Activator.CreateInstance(typeof(T));
                    }

                    
    return _instance;
                }

            }

        }


        
    /// <summary>
        
    /// 要实现单例的类
        
    /// </summary>

        public class Foo
        
    {
            
    private int count = 0;

            
    public int Count
            
    {
                
    get
                
    {
                    count
    ++;
                    
    return count;
                }

            }

        }


        
    /// <summary>
        
    /// 主函数
        
    /// </summary>

        class Program
        
    {
            
    static void Main(string[] args)
            
    {
                
    //连续调用三次如果值是递增的话说明三次调用都是同一个实例
                Console.WriteLine(Singleton<Foo>.Instance.Count);
                Console.WriteLine(Singleton
    <Foo>.Instance.Count);
                Console.WriteLine(Singleton
    <Foo>.Instance.Count);

                Console.ReadLine();
            }

        }

    }

     
  • 相关阅读:
    小程序开发经验分享汇总
    VUE插件总结
    前端开发中一些好用的chrome插件总结
    Vue-meta
    element-ui Cascader 级联选择器 点击label选中
    盘点一些跨端框架
    vue 组件自定义v-model
    mac更新node,npm版本
    数组/对象数组去重
    基于vue和svg的树形UI
  • 原文地址:https://www.cnblogs.com/xiaotuni/p/2365744.html
Copyright © 2011-2022 走看看