这个语法在抽象类的声明中意味着什么?

Mau*_*tti 5 c#

我想这是一个简单的问题,但我找不到正确的答案.这个语法是什么意思?我有点混淆行末的new():

public abstract class SomeClass<E> : Controller where E : ISomeInterface, new()
{
    //code of the abstract class
}
Run Code Online (Sandbox Code Playgroud)

小智 11

新约束指定泛型类声明中的任何类型参数都必须具有公共无参数构造函数.要使用新约束,类型不能是抽象的.

来自:http://msdn.microsoft.com/en-us/library/sd2w2ew5.aspx