MyClass对象与给定类</t>中的<t>之间的关系是什么

时间:2012-01-20 01:30:14

标签: c# generics

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 ;
}

3 个答案:

答案 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)

  1. 不要求您将MyClass强制转换为IGenericInterface

  2. 在编译时,所有出现的T都将替换为调用中使用的实际类类型,而不是在运行时将类转换为IGenericInterface。