Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oop 在c中使用集合添加多个数据类型#_Oop_C# 4.0 - Fatal编程技术网

Oop 在c中使用集合添加多个数据类型#

Oop 在c中使用集合添加多个数据类型#,oop,c#-4.0,Oop,C# 4.0,在下面我问的一个面试问题中,我想问你同样的问题,因为我没有回答,仍然没有弄清楚 这是密码 public class Bike { public Bike() { } public virtual string GetBikedetails() { return "This is General Bike"; } } public class Honda : Bike { public Honda() { } public ov

在下面我问的一个面试问题中,我想问你同样的问题,因为我没有回答,仍然没有弄清楚 这是密码

public class Bike
{
    public Bike() { }

    public virtual string GetBikedetails()
    {
        return "This is General Bike";
    }
}

public class Honda : Bike
{
    public Honda() { }

    public override string GetBikedetails()
    {
        return "This is Honda Bike";
    }
}

public class Hero : Bike
{
    public Hero() { }

    public override string GetBikedetails()
    {
        return "This is Hero Bike";
    }
}
下面的问题是关于上述代码提出的 1.在课堂上做三个实例 2.将它们添加到集合中 3.在集合中迭代以单独获取对象


请回复您的答案。

您已经准备好了一切。只需创建自行车列表并添加特定派生类型的元素

List<Bike> myList = new List<Bike>();
Bike b = new Bike();
Honda h = new Honda();
Hero r = new Hero();
myList.Add(b);
myList.Add(h);
myList.Add(r);

foreach(var x in myList)
    Console.WriteLine(x.GetBikedetails());
List myList=new List();
自行车b=新自行车();
本田h=新本田();
英雄r=新英雄();
添加(b);
添加(h);
添加(r);
foreach(myList中的变量x)
Console.WriteLine(x.GetBikedetails());

您可以将自行车作为接口。否基于上述代码,我必须响应,而不是更改代码given@NMK你能详细说明一下吗?我的意思是用IBike而不是Bike作为基类。我的解释和你提到的一样,但面试官希望有一些通用的集合(没有foreach循环是可能的)通用术语有点模糊。你的意思是一个集合,你可以插入任何类型的元素没有共同点吗?(例如一辆自行车和一条鱼?)它们与基类和子类关系有一些共同点,在这种情况下,我在问我,我看不出这段代码没有回答三个问题:1)创建3个实例。。。完成,2)将它们添加到集合中…完成,3)迭代集合以获取。。。。完成。我认为你做得很好,但作为面试官的面试官不应该在解雇提议的解决方案后解释,所以。。。让我们看看其他人是否能找到更好的答案。