• 泛型 Generics


    2.0 版 C# 语言和公共语言运行时 (CLR) 中增加了泛型。泛型将类型参数的概念引入 .NET Framework,类型参数使得设计如下类和方法成为可能:这些类和方法将一个或多个类型的指定推迟到客户端代码声明并实例化该类或方法的时候。例如,通过使用泛型类型参数 T,您可以编写其他客户端代码能够使用的单个类,而不致引入运行时强制转换或装箱操作的成本或风险,如下所示:

     1 namespace Generics
     2 {
     3     public class GenericList<T>
     4     {
     5         void Add(T input) { }
     6     }
     7     class TestGenericList
     8     {
     9         private class ExampleClass { }
    10         static void Main()
    11         {
    12             // Declare a list of type int.
    13             GenericList<int> list1 = new GenericList<int>();
    14 
    15             //Declare a list of type string
    16             GenericList<string> list2 = new GenericList<string>();
    17 
    18             //Declare a list of type ExampleClass
    19             GenericList<ExampleClass> list3 = new GenericList<ExampleClass>();
    20         }
    21     }
    22 }

    泛型概述

     

    • 使用泛型类型可以最大限度地重用代码、保护类型的安全以及提高性能。

    • 泛型最常见的用途是创建集合类。

    • .NET Framework 类库在 System.Collections.Generic 命名空间中包含几个新的泛型集合类。应尽可能地使用这些类来代替普通的类,如 System.Collections 命名空间中的 ArrayList

    • 您可以创建自己的泛型接口、泛型类、泛型方法、泛型事件和泛型委托。

    • 可以对泛型类进行约束以访问特定数据类型的方法。

    • 关于泛型数据类型中使用的类型的信息可在运行时通过使用反射获取

    勤劳一日,便得一夜安眠;勤劳一生,便得幸福长眠。
  • 相关阅读:
    杭电 oj2602~(0-1背包问题)
    杭电oj~1005 简单的找周期
    poj 2524~并查集基础
    poj 1611~并查集基础
    poj1182~食物链~带权并查集
    杭电 oj3047~带权并查集
    杭电 oj1232~并查集
    杭电 oj2033~
    VS2013使用过程中出现的一些问题:
    python学习笔记:
  • 原文地址:https://www.cnblogs.com/zhaomengmeng/p/5843084.html
Copyright © 2020-2023  润新知