中
MyClass
对象与<T>
之间的关系是什么
public class MyClass<T> where T : myGeneric
{
}
在DBM回复后添加到我的问题
上面的实现如何优于
IGenericInterface
{
int Bar();
}
public abstract GenericClass : IGenericInterface
{
public virtual int Bar()
{
return 1;
}
}
然后使用abstraft类来实现
public class MyClass : GenericClass
{
IGenericInterface GenericObject ;
}
答案 0 :(得分:2)
您可能想要阅读C#generics。您发布的代码是一个名为MyClass
的类,可以从类myGeneric
中获取任何内容。 T
是该类型的占位符。
public class myGeneric
{
public int Bar()
{
return 1;
}
}
public class MyClass<T> where T : myGeneric
{
public void DoSomething(T foo)
{
int x = foo.Bar();
}
}
因此,在上面的示例中,x
将为1。
答案 1 :(得分:0)
“MyClass”是班级名称,“&lt; T&gt;”是通用参数列表。
答案 2 :(得分:0)
不要求您将MyClass强制转换为IGenericInterface
在编译时,所有出现的T都将替换为调用中使用的实际类类型,而不是在运行时将类转换为IGenericInterface。