C#泛型:提升代码复用与类型安全的利器
1. 引言
随着项目日益复杂,我们需要更好的方式来复用和定制现有软件。C#为了便于代码复用,尤其是算法复用,引入了泛型(Generics)特性。就像方法因能接受参数而强大一样,能接受类型参数的类也具备了更强大的功能,这正是泛型所赋予的。
2. 无泛型的C
在探讨泛型之前,我们先看看不使用泛型的类。以 System.Collections.Stack 类为例,它用于表示一个对象集合,遵循后进先出(LIFO)原则。其主要方法 Push() 和 Pop() 分别用于向栈中添加和移除元素。以下是该类中 Pop() 和 Push() 方法的声明:
public class Stack
{
public virtual object Pop();
public virtual void Push(object obj);
// ...
}
在程序中,栈类型的集合常被用于实现多次撤销操作。例如,在模拟“Etch A Sketch”游戏的程序中,就使用了 Stack 类来实现撤销功能:
using System;
using System.Collections;
class Program
{
// ...
public void Sketc
超级会员免费看
订阅专栏 解锁全文
1

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



