我爱Aspx >> Asp.Net >> C# 泛型简介您可以为您的类使用的每个一般类型参数提供约束,例如:
public class LinkedList where K : IComparable where T : ICloneable {...}
您可以具有一个基类约束,这意味着规定一般类型参数派生自特定的基类:
public class MyBaseClass {...} public class LinkedList where K : MyBaseClass {...}
但是,在一个约束中最多只能使用一个基类,这是因为 C# 不支持实现的多重继承。显然,您约束的基类不能是密封类或静态类,并且由编译器实施这一限制。此外,您不能将 System.Delegate 或 System.Array 约束为基类。
您可以同时约束一个基类以及一个或多个接口,但是该基类必须首先出现在派生约束列表中:
public class LinkedList where K : MyBaseClass, IComparable {...}
C# 确实允许您将另一个一般类型参数指定为约束:
public class MyClass where T : U {...}
在处理派生约束时,您可以通过使用基类型本身来满足该约束,而不必非要使用它的严格子类。例如:
public interface IMyInterface {...} public class MyClass where T : IMyInterface {...} MyClass obj = new MyClass();
或者,您甚至可以:
public class MyOtherClass {...} public class MyClass where T : MyOtherClass {...} MyClass obj = new MyClass();
Ҷƪл˵?
《Effective C#》 翻译札记[05-20]
C#实现WEB服务器[05-20]
C#中时间差的计算[05-20]
C#四种Eval测试结果:不要用Code..[05-20]
通常C#面试题[05-20]
用C#与XML创建动态分层菜单[05-20]
C#数值结果表(格式化字符串)[05-20]
用浏览器来接收C# 的程序返回的时..[05-20]
使用C# 编写扩展存储过程[05-20]
C#正则表达式应用范例[05-20]
《Effective C#》 翻译札记[05-20]
Visual Studio 2005 新功能、新特..[05-20]
对mssql出现选定的用户拥有对象而..[05-20]
常用正则表达式[05-20]
将 Web 项目从 VS2002/2003 转换..[05-20]
Visual Studio 术语表[K-Z][05-20]
使用 Visual Studio 2005 Team S..[05-20]
常用CHM帮助文档集锦下载[2007-0..[05-20]
常用.NET工具下载(包括.NET可再发..[05-20]
怎么样察看经过编译过的代码exe或..[05-20]