C# 继承泛型超类,超类中有一个抽象的泛型方法,子类重写方法的问题

linzhihuang 发布于 2014/09/11 19:12
阅读 3K+
收藏 0
C#

eg:

定义一个超类

public abstract  class B<T>{

  protected abstract List<List<string>> testMethod<T>(List<T> list);

}

C是一个对象有ID和Name俩个属性

定义一个子类

 public class A : B<C>  {

   protected override List<List<string>> testMethod<T>(List<T> tempList)  
         {
//             问题我要怎么遍历tempList集合中对象取出对象的属性
         }

}

由于A继承了B,使用C对象作为类型参数代替了T

如果我用

foreach(T item in tempList){

console.writeLine(item.ID+item.Name);

}

这样是遍历不了,因为T没有被替换成C对象 



加载中
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部