zoukankan      html  css  js  c++  java
  • .Net 学习之泛型(一)

    一、前言

      泛型的使用,是为了让我少写重复的代码,提高工作的效率添加的一个延迟声明的类型,重点我个人放在了泛型的约束这里。为什么要对泛型进行约束?主要有三点

      1、加了约束,可以获取更多的功能

      2、保证了程序的准确性和稳定性

      3、可以验证调用的准确性

    二、实践

      

    using System;
    
    namespace Demo1
    {
       public class Program
        {
    
            static void Main(string[] args)
            {
                China china = new China();
                DoSomething(china);
    
            }
    
            public static void DoSomething<T>(T tParameter)
           // where T : class //这是类型引用
            //where T : struct//这是值引用
            //where T : new()//这是无参构造函数引用
            where T : class,new() //这是嵌套使用
            {
                
            }
    
        }
    
        /// <summary>
        /// 做的事情接口
        /// </summary>
        public interface IPeople
        {
            void ReadBook();
            void Write();
            void Play();
        }
    
        /// <summary>
        /// 一个人
        /// </summary>
        public class People
        {
            public int IdCard { get; set; }
    
            public string Name { get; set; }
    
            public void DoHomeWORK() { 
            
            }
    
        }
    
        /// <summary>
        /// 中国人
        /// </summary>
        public class China : People, IPeople
        {
            public void Play()
            {
                throw new NotImplementedException();
            }
    
            public void ReadBook()
            {
                throw new NotImplementedException();
            }
    
            public void Write()
            {
                throw new NotImplementedException();
            }
        }
    
        /// <summary>
        /// 美国人
        /// </summary>
        public class American : People, IPeople
        {
            public void Play()
            {
                throw new NotImplementedException();
            }
    
            public void ReadBook()
            {
                throw new NotImplementedException();
            }
    
            public void Write()
            {
                throw new NotImplementedException();
            }
        }
    
        /// <summary>
        /// 韩国人
        /// </summary>
        public class Korea
        {
            public void Play()
            {
                throw new NotImplementedException();
            }
    
            public void ReadBook()
            {
                throw new NotImplementedException();
            }
    
            public void Write()
            {
                throw new NotImplementedException();
            }
        }
    
    }
  • 相关阅读:
    jQuery dataType指定为json的问题
    C# Post数据和接收简单示例【转】
    搜集的关于领域驱动设计(DDD)的理论知识
    WCF:(400) Bad Request
    关于SQL生成随机字符串
    如何通过禁用按钮避免jQuery.ajax重复请求
    注册自定义HTTP Handlers
    Node.js+Express on IIS
    iframe在IE下不能写cookie的解决
    node.js从全局目录里加载module
  • 原文地址:https://www.cnblogs.com/gzbit-zxx/p/12422376.html
Copyright © 2011-2022 走看看