如何声明一个继承自另一个抽象类的抽象泛型类?

5

我现在卡住了。

我有这样一个类:public abstract class Class1<T> where T : SomeBaseClass, new()

我想让Class1继承自这个类:public abstract class Class2。我该如何做?我能这样做吗?

3个回答

11
继承类出现在where子句之前。
public abstract class Class1<T> : Class2 where T : SomeBaseClass, new()

请参阅MSDN上关于通用类的页面。


1

你只需要在模板约束之前放置基类即可。

public abstract class Class1<T> : Class2 where T : SomeBaseClass, new()

0

只需将继承子句放在泛型类型约束之前即可。如果约束在单独的一行上,我认为它会更易读。

public abstract class Class2
{
}

public abstract class Class1<T> : Class2
    where T : SomeBaseClass, new()
{
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接