Java: наследовать конструктор
Я хочу иметь конструктор с аргументом, который автоматически наследуется всеми дочерними классами, но Java победилане дай мне сделать это
class A {
public A(int x) {
// Shared code here
}
}
class B extends A {
// Implicit (int x) constructor from A
}
class C extends A {
// Implicit (int x) constructor from A
}
Я нене хочу писать,B(int x)
C(int x)
и т. д. для каждого дочернего класса. Есть ли более разумный способ решения этой проблемы?
Решение № 1. Сделатьinit()
метод, который можно вызвать после конструктора. Это работает, хотя для моего конкретного проекта я хочу потребовать, чтобы пользователь указал определенные параметры в конструкторе, которые проверяются во время компиляции (например, не через varargs / reflection).