C#泛型概念的简介与泛型的使用

2020-01-05 09:47:40刘景俊

C# 泛型(Generic)

  • 定义:泛型允许我们延迟编写类或方法中的编程元素的数据类型的规范,直到实际在程序中使用它的时候。也就是说,泛型是可以与任何数据类型一起工作的类或方法。
  • 泛型的使用:当我们的类/方法不需要关注调用者传递的实体是什么,这个时候就可以使用泛型。

    泛型的特性:

    使用泛型是一种增强程序功能的技术,具体表现在以下几个方面:

    • 它有助于实现代码的重用、保护类型的安全以及提高性能。
    • 我们可以创建泛型集合类。在 System.Collections.Generic 命名空间中包含了一些新的泛型集合类。这些类替代 System.Collections 中的集合类。
    • 我么可以自定义:泛型接口、泛型类、泛型方法、泛型事件和泛型委托。
    • 我们还可以对泛型类进行约束以访问特定数据类型的方法。
    • 关于泛型数据类型中使用的类型的信息可在运行时通过使用反射获取。

      泛型限定条件:

      • 结构(类型参数必须是值类型。可以指定除 Nullable 以外的任何值类型)
      • 类 (类型参数必须是引用类型,包括任何类、接口、委托或数组类型)