自定义集合中的C#抽象和泛型

时间:2014-11-10 22:23:42

标签: c# generics inheritance abstract-class

我对C#泛型和抽象有一些不清楚。 我有一个抽象类AbstList,由类包含AbstRec列表

继承
public abstract class AbstList<T> : IList<T> where T:AbstRec {...}
public class List1 : AbstList<Rec1> {}
public class List2 : AbstList<Rec2> {}

每个类List都有Rec的元素集合,它们继承自AbsRec

public abstract class AbstRec {...}
public class Rec1 : AbstDb {...}
public class Rec2 : AbstDb {...}

我想在每个类Rec中添加对父类的引用,父类将是从AbstList继承的类。我该如何实现?到目前为止,我只能找到如何实现父级到类列表,但我不知道如何在AbstRec中正确声明和传递父级。

这不起作用:((最好的重载方法在Public Rec1中有一些无效的参数)

public abstract class AbstRec 
{
    AbstList<AbstRec> parent;
    Public AbstRec(AbstList<AbstRec> parent)
    {
        this.parent=parent;
    }
}   

public  class Rec1 : AbstRec
{    
    Public Rec1(AbstList<Rec1> parent) : base(parent)
    {
        ...
    }
}   

0 个答案:

没有答案