猿问

我如何在 C# 中将子类数据添加到我的数组中

例如,我有一个Vehicles继承自 MobileObjects. 那Vehicles类有10meters,23meters,12meters 作为数据。


我将如何将该信息添加到该数组中?


static void Main(string[] args) {

    Console.WriteLine("hello");

    MobileObjects[] array = new MobileObjects[3];


    MobileObjects mob = new MobileObjects();

    mob.setName("Jawaharal");

    mob.setPosition();

    mob.getID();

    array[0] = mob;


    MobileObjects mob1 = new MobileObjects();

    mob1.setName("Willow");

    mob1.setPosition();

    array[1] = mob1;


    MobileObjects mob2 = new MobileObjects();

    mob2.setName("Indira");

    mob2.setPosition();

    array[2] = mob2;


    foreach (MobileObjects host in array) {

        Console.WriteLine("Name : " + host.Name + " ");

        Console.WriteLine("ID   : " + host.id);

        Console.WriteLine("Position: " +

            host.Position[0] + " " +

            host.Position[1] + " " +

            host.Position[2]);

    }

}


蓝山帝景
浏览 244回答 3
3回答

泛舟湖上清波郎朗

您可以将 Vehicle 实例转换为 MobileObject,然后将其添加到数组中。(这不是在所有情况下都必须的强制转换,但可能是您在您的情况下需要的,具体取决于您的 Vehicle 和 MobileObjects 类的属性)Vehicle veh1 = new Vehicle(); /// Add veh1 parameters array[3] = (MobileObjects)veh1;注意:由于您将实例转换为其基类,因此您现在应该只能在查看数组 [3] 项时访问共享参数。
随时随地看视频慕课网APP
我要回答