我为客户的拖拉机开发了一个项目。现在我必须在该项目中为Combines添加相同的功能。所以我添加了一个名为Machine的基类和两个扩展Tractor
的{{1}}和Combine
子类。
除了一些基本的更改之外,我的业务逻辑代码(即Machine
类中的抽象方法名称)保持不变,代码适用于拖拉机和组合
我面临的唯一问题是,我有一个 TractorConstant 类,其中包含大量的Enums,它们在整个项目中使用。
我想用这些Enums实现运行时多态性,例如
课程 MachineConstant
中的枚举Machine
课程 TractorConstant
中的枚举class MachineConstant{
public enum Enum195_AreMeterAlert {
VALUE, LATITUDE, LONGITUDE, DATE, TIME
}
public EnumB1_Enum195_AreMeterAlert getEnum195_AreMeterAlert();
}
和 CombineConstant
中的枚举class TractorConstant{
public enum Enum195_AreMeterAlert {
ACRE_VALUE, LATITUDE, LONGITUDE, DATE, TIME
}
public EnumB1_Enum195_AreMeterAlert getEnum195_AreMeterAlert(){
return TractorConstant.Enum195_AreMeterAlert;
}
}
我的项目中会有一个class CombineConstant{
public enum Enum195_AreMeterAlert {
ACRE_VALUE, HARVEST_VALUE, LATITUDE, LONGITUDE, DATE, TIME
}
public EnumB1_Enum195_AreMeterAlert getEnum195_AreMeterAlert(){
return CombineConstant.Enum195_AreMeterAlert;
}
}
引用,根据用户选择的机器类型,我会初始化该引用
e.g。 MachineConstant
在代码中,我想调用MachineConstant machineConstant = new CombineConstant()
但是现在我的线路出现machineConstant.getEnum195_AreMeterAlert()
错误
Expression Expected
那么如何删除此错误并且枚举是否可以实现像这样的运行时polimorphism?或者我还要对这些枚举做些什么呢?