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();
            }

        }

    }

     
  • 相关阅读:
    Linux下如何查看版本信息
    java单利模式设计
    MIT 2012 分布式课程基础源码解析-底层通讯实现
    MIT 2012分布式课程基础源码解析-事件管理封装
    MIT 2012分布式课程基础源码解析-线程池实现
    MIT 2012分布式课程基础源码解析一-源码概述
    Leetcode按Tag刷题
    网页搜集系统
    c/c++中的各种字符串转换
    gentoo装X服务器时显卡选择
  • 原文地址:https://www.cnblogs.com/xiaotuni/p/2365744.html
Copyright © 2011-2022 走看看