.NET中有类似JAVA的通配符泛型吗?java中以下代码,转成C#,如何写呢???class Person<T extends PersonMsg<? extends PersonServerMsg>>
解决方案 »
- MVC3 多实体表单提交怎么写?
- 请问,ADO.NET的SqlDataAdapter类
- C#重绘控件:怎样去掉FROM\PANEL\BUTTON控件的背景颜色???急急急!!!
- 关于c#控件子类化的问题。。在线等。。。急。。。。请大家一定要帮忙(我只有30分。全给了。。)
- 现在做项目用vs.net2005 beta 2 开发好还是2003好?
- 将程序集安装到全局程序集缓存中 到底有什么用?能通俗的讲讲吗?
- Winform中如何用程序隐藏和显示DataGrid中的一列,,help me!
- 我想控制远程主机,可以执行该机的cmd程序、对文件操作等等,请问如何实现?
- 求教,在C#中如何调用C++的类?
- 急救,在线等待
- 如何绘制一条直线的垂线
- TCP传输和线程问题
1.接口约束。
例如,可以声明一个泛型类 MyGenericClass,这样,类型参数 T 就可以实现 IComparable<T> 接口:public class MyGenericClass<T> where T:IComparable { } 2.基类约束:指出某个类型必须将指定的类作为基类(或者就是该类本身),才能用作该泛型类型的类型参数。
这样的约束一经使用,就必须出现在该类型参数的所有其他约束之前。class MyClassy<T, U>
where T : class
where U : struct
{
} 3.where 子句还可以包括构造函数约束。
可以使用 new 运算符创建类型参数的实例;但类型参数为此必须受构造函数约束 new() 的约束。new() 约束可以让编译器知道:提供的任何类型参数都必须具有可访问的无参数(或默认)构造函数。例如:
where T : PersonMsg<?>
where ? : PersonServerMsg