第19章C#4.0幻灯片.pptVIP

  • 1
  • 0
  • 约3.19千字
  • 约 35页
  • 2016-12-10 发布于浙江
  • 举报
C#语言程序设计徐虹 xh27@163.com 第十九章 泛型 19.1 什么是泛型 ●到现在为止,所有在类声明用到的类型都是特定的类型。然而,很多时候,如果我们可以把类的行为提取或重构出来,使之不仅能应用到它们编码的数据类型上,而且还能应用到其他类型上的话,类就会更有用。 ●泛型是专门为多段代码在不同的数据类型上执行相同指令的情况专门设计的。 ●见示例代码Page_310和Page_312。 Int类型的栈 Float类型的栈 19.1 什么是泛型 上述修改中容易出错并且有如下缺点: 我们需要仔细检查类的每一个部分来看哪些类型的声明需要修改,哪些类型的声明需要保留。 每次需要新类型的栈时,都要重复这个过程。 程序中有很多几乎具有相同代码的副本,占据了额外的空间。 调试和维护这些并行的实现不但复杂而且容易出错。 19.2 C#中的泛型 泛型允许我们声明类型参数化的代码,我们可以用不同的类型进行实例化。也就是说,我们可以用“类型占位符”来写代码,然后在创建类的实例时提供真实的类型。 泛型类型不是类型,而是类型的模板。 继续栈的示例 泛型类声明中,字符串由尖括号和T构成,T代表类型的占位符。在类声明的主体中,每一个T都会被编译器替换为实际类型。 19.3 泛型类 创建和使用常规的、非泛型的类的过程中有两个步骤:声明类并创建类的实例。 泛型类,我们必须先从它构建实

文档评论(0)

1亿VIP精品文档

相关文档