泛型(Generics)是Visual Basic 2005中的一种新特性,然而很多开发者在第一次看到它的时候可能忽略它,但是他们最终会发现,在了解泛型之后,离开了泛型就几乎不能工作了。泛型这个专业术语并没有道出这种特性能够实现的真实功能。假设我们需要编写一个执行数学计算的类(class)。使用标准的代码编写技术,你必须为整型和实数型(对于所有的形式)编写独立的方法。通过使用泛型,你可以一次性编写方法,并让.NET框架组件为你处理数据类型的问题。泛型可以使你在编程过程中体会到更多的快乐。你不需要额外的工作就能体会到代码重用(reuse)的优点。
阅读导航:
一、泛型的优点
使用泛型可以提高性能,其中显著的一个改进是.NET框架组件不会在值类型上使用装箱(boxing);使用泛型类的另一个令人惊奇的特性是IntelliSense居然可以跟踪强数据类型定义。
二、建立泛型类
使用泛型的时候,你应该选择建立有广泛用途的类,这样的话所建立的泛型类所花费的时间最终会整个开发时间上获得回报。例如,集合就是一种处理多个数据类型的类,而一般你会在多个应用程序中使用同一个集合的多种不同的形式,假如采用泛型,那么就不需要多次重复的建立不同形式的同一集合。
三、使用泛型类
我们在上面建立的泛型类在使用方法上与其他类没有什么不同,仍然需要将其实例化。
四、约束泛型类
也许你对实例中泛型类能够接受任何数据类型感惧怕,你不得不担心在使用中出现程序仍然会对错误参数产生反映,对,是存在这样的风险,不过我们可以对泛型类加以约束。
五、为泛型类定义多个类型
你不必仅仅使用一种数据类型定义每个类,泛型类也提供多个数据类型,你所需要做的是用逗号分开每种数据类型。
结束语
尽管泛型类起先看起来仅仅是前进的一步,但是它们实际上是.NET革命中的一个巨大飞跃。使用泛型把你从为每个数据类型建立新类中释放了出来,提高了性能,并减少了开发和调试的时间。为了体会Visual Studio 2005中最好的部分,你真的应该试着使用这个新特性——你会发现自己将很喜欢它的。