我是java的新手,无法解决这个问题! 这是它应该是什么样子,但它给了我一个错误,我不确定我是否必须转换它! 或者我做错了什么!!!
这是我的要求: 使用提供的车辆数据为变量分配值。有关访问这些车辆数据值的信息,请参阅数据文件布局信息。 速度
public class Bicycle extends Vehicle implements IOutput {
private static int speeds;
public Bicycle(String[] vehicleData) {
super(vehicleData,speeds); // get error: The constructor Vehicle(String[], int) is undefined
// or i should this one :
speeds = Convert.toInteger(vehicleData[0]);
}
这是车辆类
public Vehicle(String[] vehicleData) {
count++;
owner= new Owner(vehicleData);
setVehicleType(Convert.toInteger(vehicleData[0]));
make = vehicleData[1];
model = vehicleData[2];
color = vehicleData[3];
purchaseDate = vehicleData[4];
cost = Convert.toDouble(vehicleData[5]);
}
答案 0 :(得分:4)
你的Vehicle类中的构造函数只接受string [],你传递一个字符串[]和一个int。
更改
super(vehicleData,speeds); // get error: The constructor Vehicle(String[], int) is undefined
到
super(vehicleData); // your error'd now disappear
或在超类车辆中声明速度。
int speed;
public Vehicle(String[] vehicleData, int speed)
答案 1 :(得分:2)
super
正在调用Vehicle
构造函数,它只接受String,而不是String和int。
改为此。
// remove static
int speed;
public Bicycle(String[] vehicleData) {
super(vehicleData);
speeds = Integer.valueOf(vehicleData[0]);
}