【发布时间】:2021-07-13 01:27:39
【问题描述】:
这是我学习抽象课程的第一周,我有下一个练习:
假设我有下一个示例:我有 2 个模型,ElectricalBike 和 ManualBike。两者都具有不同实现的所有属性和方法。但是ElectricalBike也有batteryDuration
因此,我创建了一个名为 Bike 的抽象类,它具有所有共享属性和抽象方法的接口。
我还有一个容器类,让我们调用 BicycleShop,它有一个方法应该接收一个自行车数组,包括电动自行车和手动自行车。
我的问题是,该方法应该接收什么?因为它不会是准确的论点 Bike[]。它应该接收 2 个参数,ElectricalBike[] 和 ManualBike[]?
【问题讨论】:
-
Bike[]有什么问题?然后可以将Bike的所有子类型(ElectricBike和ManualBike)放入数组中。 -
@MadyDaby 因此,如果我以 2 个 ElectricBike 和 2 个 ManualBike 为例并将它们推入阵列中,不会有问题吗?因为我当然不能实例化像 Bike 这样的抽象类
-
应该没问题
标签: java arrays class arguments abstract-class