Да, если есть конструктор без параметров, он будет вызываться всегда.Если имеется более одного конструктора, вы можете выбрать, какой из них вызывать с помощью ключевого слова base
:
class Parent {
public Parent() {}
public Parent(int x) {}
}
class Child : Parent {
public Child(int x) : base(x) {
}
}
Если существует no конструктор без параметров,Вы будете вынуждены сделать это:
class Parent {
public Parent(int x) {}
}
class Child : Parent {
// This will not compile without "base(x)"
public Child(int x) : base(x) {
}
}