Ваш Bike
класс имеет только один конструктор:
public Bike(int initSpeed)
{
this.speed = initSpeed;
}
Это принимает один параметр.
Когда вы наследуете класс, конструктор производного класса вызывает конструктор из базыclass.
В конструкторе GearedBike
class 'вы не указываете, какой конструктор из Bike
вызывать, поэтому компилятор принимает Bike()
, которого не существует.
Youвозможно, вам нужно что-то вроде ниже, где мы указываем, какой базовый конструктор вызывать, и передаем соответствующее значение.
public GearedBike(string name)
: base(0)
{
this.name = name;
}
Вы также можете захотеть конструктор GearedBike
, где вы можете установить скорость и имя, напримерниже:
public GearedBike(string name, int initSpeed)
: base(initSpeed)
{
this.name = name;
}