泛型(C# 编程指南)
2008-08-13 15:20
351 查看
C# 编程指南 :http://msdn.microsoft.com/zh-cn/library/512aeb7t(VS.80).aspx
泛型(C# 编程指南)
泛型是 2.0 版 C# 语言和公共语言运行库 (CLR) 中的一个新功能。泛型将类型参数的概念引入 .NET Framework,类型参数使得设计如下类和方法成为可能:这些类和方法将一个或多个类型的指定推迟到客户端代码声明并实例化该类或方法的时候。例如,通过使用泛型类型参数 T,您可以编写其他客户端代码能够使用的单个类,而不致引入运行时强制转换或装箱操作的成本或风险,如下所示:
C#
![](http://i.msdn.microsoft.com/Platform/Controls/CodeSnippet/resources/copy_off.gif)
复制代码
泛型最常见的用途是创建集合类。
.NET Framework 类库在 System.Collections.Generic 命名空间中包含几个新的泛型集合类。应尽可能地使用这些类来代替普通的类,如 System.Collections 命名空间中的 ArrayList。
您可以创建自己的泛型接口、泛型类、泛型方法、泛型事件和泛型委托。
可以对泛型类进行约束以访问特定数据类型的方法。
关于泛型数据类型中使用的类型的信息可在运行时通过反射获取。
泛型介绍(C# 编程指南)
泛型的优点(C# 编程指南)
泛型类型参数(C# 编程指南)
类型参数的约束(C# 编程指南)
泛型类(C# 编程指南)
泛型接口(C# 编程指南)
泛型方法(C# 编程指南)
泛型委托(C# 编程指南)
泛型代码中的默认关键字(C# 编程指南)
C++ 模板和 C# 泛型之间的区别(C# 编程指南)
泛型和反射(C# 编程指南)
运行库中的泛型(C# 编程指南)
.NET Framework 类库中的泛型(C# 编程指南)
“泛型”示例 (C#)
20 泛型
泛型(C# 编程指南)
泛型是 2.0 版 C# 语言和公共语言运行库 (CLR) 中的一个新功能。泛型将类型参数的概念引入 .NET Framework,类型参数使得设计如下类和方法成为可能:这些类和方法将一个或多个类型的指定推迟到客户端代码声明并实例化该类或方法的时候。例如,通过使用泛型类型参数 T,您可以编写其他客户端代码能够使用的单个类,而不致引入运行时强制转换或装箱操作的成本或风险,如下所示:
C#
![](http://i.msdn.microsoft.com/Platform/Controls/CodeSnippet/resources/copy_off.gif)
复制代码
// Declare the generic class public class GenericList<T> { void Add(T input) { } } class TestGenericList { private class ExampleClass { } static void Main() { // Declare a list of type int GenericList<int> list1 = new GenericList<int>(); // Declare a list of type string GenericList<string> list2 = new GenericList<string>(); // Declare a list of type ExampleClass GenericList<ExampleClass> list3 = new GenericList<ExampleClass>(); } }
泛型概述
使用泛型类型可以最大限度地重用代码、保护类型的安全以及提高性能。泛型最常见的用途是创建集合类。
.NET Framework 类库在 System.Collections.Generic 命名空间中包含几个新的泛型集合类。应尽可能地使用这些类来代替普通的类,如 System.Collections 命名空间中的 ArrayList。
您可以创建自己的泛型接口、泛型类、泛型方法、泛型事件和泛型委托。
可以对泛型类进行约束以访问特定数据类型的方法。
关于泛型数据类型中使用的类型的信息可在运行时通过反射获取。
相关章节
更多信息:泛型介绍(C# 编程指南)
泛型的优点(C# 编程指南)
泛型类型参数(C# 编程指南)
类型参数的约束(C# 编程指南)
泛型类(C# 编程指南)
泛型接口(C# 编程指南)
泛型方法(C# 编程指南)
泛型委托(C# 编程指南)
泛型代码中的默认关键字(C# 编程指南)
C++ 模板和 C# 泛型之间的区别(C# 编程指南)
泛型和反射(C# 编程指南)
运行库中的泛型(C# 编程指南)
.NET Framework 类库中的泛型(C# 编程指南)
“泛型”示例 (C#)
C# 语言规范
有关更多信息,请参见 C# 语言规范中的以下各章节:20 泛型
请参见
参考
相关文章推荐
- default 关键字泛型代码中的默认关键字(C# 编程指南)
- 泛型接口(C# 编程指南)
- c# 泛型 类型参数的约束(C# 编程指南)
- 如何:为泛型列表创建迭代器块(C# 编程指南)
- 泛型方法(C# 编程指南)
- 泛型代码中的默认关键字(C# 编程指南)
- 泛型(C# 2。0 编程指南)
- (面试)泛型的优点(C# 编程指南)
- C#/C++ 模板和 C# 泛型之间的区别(C# 编程指南
- 泛型方法(C# 编程指南)
- c# 泛型 类型参数的约束(C# 编程指南)
- 泛型 (C# 编程指南)
- ASP.NET 2.0 中泛型的使用(C# 编程指南)
- 泛型(C# 2。0 编程指南)
- c#编程指南(三) 泛型委托(Generic Delegate)
- 泛型接口(C# 编程指南) ---From MSDN
- c#编程指南(三) 泛型委托(Generic Delegate)
- 泛型(C# 编程指南)网址
- 泛型委托(C# 编程指南)
- c# 泛型 类型参数的约束(C# 编程指南)