摘要: 12.6 泛型方法 方法和类可以各自定义类型参数 定义泛型类、结构或接口时,类型中定义的任何方法都可以引用类型指定的类型参数。 类型参数可以作为方法参数、返回值或方法内部定义的局部变量的类型使用。 CLR还允许方法指定他自己的类型参数,这些参数也可以作为参数、返回值或局部变量的类型使用。 在下例中类 阅读全文
posted @ 2018-11-03 23:50 田错 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 12.3 泛型接口 泛型接口的意义 显然,泛型的主要作用就是定义泛型的引用类型和值类型。 然而对泛型接口的支持对CLR来说也很重要。没有泛型接口,每次用非泛型接口如IComparable来操作值类型都会发生装箱,而且会失去编译时的类型安全性。 这将严重制约泛型类型的应用范围,因此CLR提供了对泛型接 阅读全文
posted @ 2018-11-03 23:12 田错 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 12.2 泛型基础结构 12.2.1 开放类型和封闭类型 具有泛型类型参数的类型仍然是类型,CLR同样会为他创建内部的类型对象。 然而具有泛型类型参数的类型称为开放类型,CLR禁制构造开放类型的任何实例。类似于CLR禁止构造接口类型的实例。 代码引用泛型类时可指定一组泛型类型实参。为所有类型参数都传 阅读全文
posted @ 2018-11-03 22:49 田错 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 第十二章 泛型 泛型介绍 泛型是CLR和编程语言提供的一种特殊机制,他支持另一种形式的代码重用,即算法重用。 CLR允许创建泛型引用类型和泛型值类型,但不允许创建泛型枚举类型。 此外CLR还允许创建泛型接口和泛型委托。 方法偶尔也封装有用的算法,所以CLR允许在引用类型、值类型或接口中定义泛型方法。 阅读全文
posted @ 2018-11-03 20:58 田错 阅读(141) 评论(0) 推荐(0) 编辑