Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.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
C# 按顺序运行每个派生类型的相同方法#_C#_Abstract Class_Derived Class_Base Class - Fatal编程技术网

C# 按顺序运行每个派生类型的相同方法#

C# 按顺序运行每个派生类型的相同方法#,c#,abstract-class,derived-class,base-class,C#,Abstract Class,Derived Class,Base Class,我有下面的代码,带有IVehile接口,有TestDrive方法。 有一个抽象类-Vehicles,它实现了IVehichile&具有一个属性TestDriveTime 有许多子类,如Car,Scooter,等等(大约25个这样的子类)。源自Vehicle&并有自己的TestDrive()实现 请帮我回答我的问题- 如果我必须按顺序运行这些TestDrive,那么Main()中的代码是否正确 如果所有子对象都使用相同的TestDriveTime,我应该如何设置它 1) 申报清单: List&l

我有下面的代码,带有
IVehile
接口,有
TestDrive
方法。 有一个抽象类-
Vehicles
,它实现了
IVehichile
&具有一个属性
TestDriveTime

有许多子类,如
Car
Scooter
,等等(大约25个这样的子类)。源自
Vehicle
&并有自己的
TestDrive()
实现

请帮我回答我的问题-

  • 如果我必须按顺序运行这些
    TestDrive
    ,那么
    Main()
    中的代码是否正确
  • 如果所有子对象都使用相同的
    TestDriveTime
    ,我应该如何设置它
  • 1) 申报清单:

    List<IVehicle> vehicles = new List<IVehicle>();
    
    并迭代:

            foreach (IVehicle v in vehicles)
                v.TestDrive();
    
    2) 您可以设置TestDriveTime并将其用于所有对象:

    v、 TestDrive(TestDriveTime)

    将方法声明更改为:
    IVehicle.TestDrive(DateTime testDriveTime)
    1)声明列表:

    List<IVehicle> vehicles = new List<IVehicle>();
    
    并迭代:

            foreach (IVehicle v in vehicles)
                v.TestDrive();
    
    2) 您可以设置TestDriveTime并将其用于所有对象:

    v、 TestDrive(TestDriveTime)

    将方法声明更改为:
    IVehicle.TestDrive(DateTime testDriveTime)