I开发者_StackOverflow中文版'm stumped on this one right now.
What I have: public abstract class Class1<T> where T : SomeBaseClass, new()
I want Class1 to inherit from: public abstract class Class2
. How can I do this? Can I do this?
The inherited class comes before the where
clause.
public abstract class Class1<T> : Class2 where T : SomeBaseClass, new()
See also the MSDN page on Generic Classes.
You just put the base class in before the template constraint.
public abstract class Class1<T> : Class2 where T : SomeBaseClass, new()
Just put the inheritance clause before the generic type constraint. It will be more readable, IMO, if the constraint is on a separate line.
public abstract class Class2
{
}
public abstract class Class1<T> : Class2
where T : SomeBaseClass, new()
{
}
精彩评论