我有一个有9个不同属性的类,每个属性都是一个类
public class Vehicles
{
Car car; //class
Train train; //class
Plane plane; //class
}
我把这个vehicle对象传递给一个方法
例如
var Vehicles = new Vehicles();
Vehicles.Car = new Car()
Object1.WorkOutTransport(vehicle)
我需要在object1中做的是在不使用switch语句和检查其他语句是否为空的情况下实例化哪个“vehicle”的训练
这不是一个“家庭作业问题”……我把它简化为只说明问题
实际车辆类有9个可能被实例化的类
最佳答案
我建议你重新考虑一下你的设计。
为什么不让所有的车辆类型实现一个公共接口,然后让IVehicle
类有一个名为Vehicles
的属性。
你只需要担心一处房产。
public Interface IVehicle
{
... //Properties Common to all vehicles
}
public class Car : IVehicle
{
... //Properties to implement IVehicle
... //Properties specific to Car
}
public class Vehicles
{
public IVehicle Vehicle { get; set; }
}
var vehicles = new Vehicles();
vehicles.Vehicle = new Car();
... //Do whatever else you need to do.