我们有一个父类——平台。所有具体的设备类都继承自这个父类——Device1、Device2、……DeviceN。
根据设备输入,我们创建相应设备类的对象并相应地工作。
我在这段代码中观察到的几件事是基类(平台类)中设备特定行为的处理。例子,
function doSomething
{
initiateSomething();
.
if ($base->getPlatform() eq 'Device1')
{
........
}
startSomething();
doneSomething();
}
这种类型的条件设备特定代码分布在父类的各个位置。此代码特定于 Device1,不适用于其他设备。我想把这个设备特定的代码作为一个函数放在 Device1 类中并在这里调用它,但这也没有用。因为这个功能只对Device1实现,所以对其他设备运行这个代码会失败。
您的帮助将不胜感激。