我有这个用Java编写的通用接口和类
public abstract class MyRootAbstractClass<W>
{
}
public abstract class MyDerivedAbstractClass<W extends MyRootFatherClass>
{
}
注意,
:MyRootFatherClass
(在MyDeriveAbstractClass声明中)不要求泛型(<W>
)。有谁知道如何将这段代码转换为C#?
最佳答案
在我看来:
public abstract class MyRootAbstractClass<T>
{
}
public abstract class MyDerivedAbstractClass<T> where T : MyRootFatherClass
{
}
where T : MyRootFatherClass
是通用类型约束,因此您不能为任意MyDerivedAbstractClass<T>
类型(仅T
和子类)创建MyRootFatherClass
。请注意,为了遵循.NET命名约定,我已将
W
重命名为T
。关于c# - 在C#中实现Java函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6913985/