C#泛型

Posted ice_baili

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#泛型相关的知识,希望对你有一定的参考价值。

    熟悉面向对象编程的开发人员都深谙这种编程的好处,其中之一就是“代码重用”,它大大提高了开发效率。泛型是CLR和编程语言提供的一种特殊机制,它支持另一种形式的代码重用,即“算法重用”。

    CLR允许创建泛型引用类型和泛型值类型,还允许创建泛型接口和泛型委托,CLR允许在引用类型、值类型或接口中定义泛型方法。

    泛型列表算法的FCL类称为List<T>(读作List of Tee)。这个类是在System。Collections.Generic命名空间中定义的。泛型List类的设计者紧接在类名后添加了<T>,表明操作的是一个未指定的数据类型,T表示变量名,也称为类型参数(type parameter)。

    根据Microsof的设计原则,泛型参数变量要么称为T,要么至少以大写T开头。大写T代表类型(Type),就像大写I代表接口(Interface)一样。

    List<DateTime> dtlist=new List<DateTime>(),使用泛型类型或方法时,指定的具体数据类型称为类型实参(type argument)。

    泛型为开发人员提供的优势有:源代码保护、类型安全、更加清晰的代码和最佳的性能。

  泛型最明显的应用就是集合类。FCL已经定义了几个泛型集合类,大多数都在System.Collections.Generic和System.Collections.ObjectModel命名空间中。要使用线程安全的泛型集合类,可以到System.Collections.Concurrent命名空间去寻找。

以上是关于C#泛型的主要内容,如果未能解决你的问题,请参考以下文章

C#泛型详解

C#泛型详解

C#中的泛型和泛型集合

C#规范整理·泛型委托事件

C#泛型学习

JavaSE——泛型自定义泛型泛型通配符上下限