C# 泛型与字符串操作全解析
1. 泛型基础
泛型是 C# 语言中一个强大的特性,它提供了编译时类型安全和消除值类型的装箱和拆箱操作这两个关键特性。下面我们来详细了解泛型的相关内容。
1.1 泛型类与继承
泛型类和继承可以以有趣的方式结合。不过,有一点需要注意:泛型参数不能作为泛型类型的基类,例如下面的代码是不合法的:
public class WillNotCompile<T> : T { }
// error CS0689: Cannot derive from 'T' because it is a type parameter
除了这个限制之外,继承和泛型在 C# 中有很多合法的场景:
- 泛型类可以以非泛型类为基类。
- 如果提供了所有类型参数,非泛型类可以以构造后的泛型类为基类。
- 泛型类可以以泛型类为基类。如果基类的类型参数有约束,派生类必须重复这些约束,这与方法级约束的隐式继承不同。
- 如果泛型类有多个泛型参数,基类可以为零个或多个类型参数提供类型参数。
以下是一些示例代码:
//base - a nongeneric class
public class BaseClass { }
//first tier - a derived generic class
public class DerivedGenericClass<T>: BaseClass {}
//second
超级会员免费看
订阅专栏 解锁全文
32

被折叠的 条评论
为什么被折叠?



