У меня есть класс, который сначала должен вызвать конструктор производного класса, прежде чем он вызовет базовый конструктор. Я знаю, что по следующему коду базовый конструктор будет вызываться первым:
public class A {
protected A () {
//do something
}
}
public class B : A {
public B () : base() {
//do something else
}
}
Являются ли они способом отменить этот порядок или обходным путем? Одно из возможных решений, в котором мы создаем дополнительный защищенный метод в базовом классе, например, doConstructor (), и вызываем его в производном конструкторе после выполнения первой задачи с полями только для чтения, поскольку компилятор не примет его. *