派生类定义的基类集合

克里斯托弗·皮斯(Christopher Pisz)

我在C#方面的经验甚至不如在C ++中,但我试图变得更好。

在C#中,是否存在一种创建基类的方法,该基类包含一个包含List的属性,然后在派生类中定义该具体类型的T是什么?

public class Base
{
    public List<T> Data { get; set; }
}

public class Derived : Base
{
    // Declare to the world you use Base.data<Elephant>
    // Callers of my Data property get Elephants
}

我想不是,因为您将无法再对基类中的接口进行操作,因为您将不知道要获取的类型,直到您知道实际实例的类型,但是C#中还是有一些神奇的事情类似对此吗?

雅库布·马萨德(Yacoub Massad)

您可以像这样使基类通用:

public class Base<T>
{
    public List<T> Data { get; set; }
}

然后在创建派生类时,可以指定T如下:

public class Derived : Base<Elephant>
{

}

对于的消费者来说DerivedData财产的类型List<Elephant>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

定义对派生类集合起作用的基类方法

来自分类Dev

从派生类创建基类对象

来自分类Dev

从基类创建派生类的实例

来自分类Dev

从基类的派生类访问属性

来自分类Dev

静态实例基类/派生类

来自分类Dev

从基类方法克隆派生类

来自分类Dev

非多态派生类的基类

来自分类Dev

基类中派生类的组成

来自分类Dev

从派生类访问基类对象

来自分类Dev

对派生类对象的基类引用

来自分类Dev

从基类指针访问派生类

来自分类Dev

从基类指针克隆派生类

来自分类Dev

从基类方法克隆派生类

来自分类Dev

静态实例基类/派生类

来自分类Dev

从派生类计算基类参数

来自分类Dev

基类中派生类的组成

来自分类Dev

从基类修改派生类的值

来自分类Dev

私有继承的直接基类阻止派生类定义间接基类的对象

来自分类Dev

实现基类的集合-我是否需要在派生类中进行如此大量的转换?

来自分类Dev

C#:将基类集合对象复制到派生类对象中

来自分类Dev

派生类可以在类声明中定义基类数组的大小吗?

来自分类Dev

C#:在基类中定义方法实现,在派生类中定义属性

来自分类Dev

在基类中定义接口后,是否需要在派生类中定义相同的接口?

来自分类Dev

C#:在基类中定义方法实现,在派生类中定义属性

来自分类Dev

如何调用在C ++中具有抽象基类和派生类的定义的基类的虚函数定义?

来自分类Dev

为什么要“不要访问派生类在基类中定义的静态成员”。

来自分类Dev

将派生类传递给定义为采用基类参数的函数

来自分类Dev

用户定义的转换是否将派生类类型转换为基类类型?

来自分类Dev

如何为抽象基类的派生类定义asp.net Htmlhelper扩展?

Related 相关文章

热门标签

归档