2011-01-26 50 views
3

这两个说法是否相同?关于仿制药的初级问题

Public Class Class2(Of X As Class1) 
Public Class Class2(Of X As {Class1}) 

“新”是什么意思?

Public Class Class2(Of X As {Class1, New}) 

回答

5

您的前两条语句是等价的。花括号是如何在VB.NET中使用多个通用约束。在你的情况下,即使有括号,也只有一个约束。

New关键字是一个约束条件,可确保类型T具有不带参数的构造函数。所以你的第二个定义确保T是或从Class1继承,并具有无参数的构造函数。

+0

感谢。我可以创建一个约束来需要一个具有不同签名的构造函数吗?例如Public Class Class2(Of X As {Class1,New(y as integer)})。我得到这个错误.... – ChadD 2011-01-26 15:43:32