C# 泛型-创建自己的泛型

  • C# 泛型-介绍与使用
  • C# 泛型-创建自己的泛型

之前介绍了如何轻松使用已经做好了的泛型,本文介绍我们自己写一个泛型类和方法的流程。

第一个泛型方法

如上实现了一个泛型(虽然这个 Foo 方法代码极其简单),但是通过指定 Foo<T> 明确了参数、返回值的类型。

有人会问:

  • 是不是非得用 T 这个字母呢?我用 T1 可以吗?可以,随便。
  • 是不是参数中非得用 T 类型,返回值非得用 T 类型呢?完全不是,只是根据你的需要,参数你也可以直接指定 int 类型,返回值你也可以指定为 string 类型,也可以不要返回值。

同时使用多个泛型

默认值

由于泛型不知道使用时的类型,所以它就不知道自己将是引用类型,还是值类型(分数值类型和结构类型)。我们希望引用类型时为变量赋 null 初始值,值类型中的数值类型时为变量赋 0 初始值。方法是使用 default 关键字。

泛型不是 object

泛型不是 object,不会涉及装箱、拆箱操作,所以以下代码均是错误的:

泛型类

前面介绍了泛型方法,其实泛型类、泛型接口、泛型委托的创建都类似于泛型方法,以泛型类为例。

  • C# 泛型-介绍与使用
  • C# 泛型-创建自己的泛型

你可能感兴趣的