以文本方式查看主题 - 中文XML论坛 - 专业的XML技术讨论区 (http://bbs.xml.org.cn/index.asp) -- 『 Dot NET,C#,ASP,VB 』 (http://bbs.xml.org.cn/list.asp?boardid=43) ---- GetingStart with c#泛型(3) (http://bbs.xml.org.cn/dispbbs.asp?boardid=43&rootid=&id=11905) |
-- 作者:admin -- 发布时间:11/9/2004 2:26:00 AM -- GetingStart with c#泛型(3) 发信人: Nineteen (-_-#!), 信区: DotNET 标 题: GetingStart with c#泛型(3) 发信站: BBS 水木清华站 (Sat Jul 17 10:50:22 2004), 站内 GetingStart with c#泛型(3) 泛型类 泛型类(Generic Class)应该是泛型部分的重头戏了,呵呵,期待已久啊 泛型类包装包装的操作是不针对任何特定类型的操作.泛型类最广泛的应用是一些集合类的 操作上,例如,队列(lists),哈西表(hashtable),堆栈(stack),队列(queue),tree等等.这些 类的特点是对自己内部的item的操作,添加,删除什么的,都和它存储的数据没什么关系,对所 有的类型都采取了一样的处理. 在几乎所有的需要集合类(collection classes)的场合中,推荐使用ms dotnet framework2. 0中提供的类型.详情请查询2.0的sdk文档(generics in the base class library) typically,你创建一个泛型类是从一个已经存在的具体的类开始的.你会把该类中的类型定 义换成类参数(type parameters)直到你认为一般化(generalization)和可用性(usability )已经达到了平衡.当你创建你自己的泛型类的时候,以下一些考虑是很重要的: 1,什么样的类型会被作为你的泛型类的类型参数.我们知道,你的类参数可以使用越多的类型 ization)会让你的代码难以理解. 2,你必须最大可能的添加约束.例如,如果你知道你的泛型类只把引用类型作为类型参数,那 么就应该添加引用类型的类型参数约束(上一片get start我讲到了).这样做的好处就是可以 防止值类型被应用到你的类上,还能让你使用as操作符在T上,并且你还能检查null值. 3,是不是该赋予基类型或者子类型泛型行为.Since generic classes can serve as base c lasses, the same design considerations apply here as with non-generic classes. (这句话翻译不好,怕说错了误导大家,所以贴原文了,非常浅显) 4,是不是得实现一个或者多个泛型接口(generic interfaces).例如:如果你正在设计一个类 ,它会被用来创建items,而且这些item的类型不定,那么你就有必要去实现一个ICompareable <T>模样的接口了. ok,后面我将介绍一堆例子:) -- 长夜漫漫,无心睡眠……饿!非常的饿...饿死我了 ~~~><~~~ ※ 来源:·BBS 水木清华站 smth.org·[FROM: 61.49.236.*]
|
W 3 C h i n a ( since 2003 ) 旗 下 站 点 苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》 |
31.250ms |