我一直在努力让新代码正常工作。通过 if 语句,我能够以更简单但更广泛的方式做到这一点。但是,由于这将是应用程序的第 2 版,我想让代码更简洁、更高效。
我想做的是有条件地实例化一个类。它会是这样的:
int Airplane = 195;
if (Airplane == 190)
_E190 Aircraft = new _E190();
else if (Airplane == 195)
_E195 Aircraft = new _E195();
我有两个类,但我想使用关键字“飞机”,所以我不必为每个类创建多个代码部分。我还发现 C# 中没有多重继承(在我看来,这可以解决问题),而且我对这种语言还比较陌生。
到目前为止,我已经完成了以我想要的方式实例化类,但我似乎无法使用每个类中声明的变量。我已经这样做了:
int Airplane = 195;
var Aircraft = Activator.CreateInstance( (Airplane == 195) ? typeof(_E195) : typeof(_E190));
MessageBox.Show(Aircraft.GetType().ToString());
MessageBox 正确显示了类型,但同样,我无法使用“Aircraft”对象访问类本身。我确信有更多方法可以做到这一点,但其中任何一种对我来说都很好。
谢谢!