java - 将构造传递到父类(super class)

标签 java oop inheritance constructor super

我想知道我是否有一个具有 x 个不同构造函数的抽象父类(super class),并且我希望能够在子类中使用所有这些构造函数,我是否必须在子类中编写所有 x 个构造函数并让它们全部调用极好的(...) ?看起来像冗余代码..

一个清晰的例子:

public class SuperClass {
public SuperClass() {
...
}
public SuperClass(double d) {
...
}
public SuperClass(BigDecimal b) {
...
}
public SuperClass(BigDecimal b, String s) {
...
}
[...]
}

我是否需要:

public class SuperClass {
public SubClass() {
super();
}
public SubClass(double d) {
super(d);
}
public SubClass(BigDecimal b) {
super(b);
}
public SuperClass(BigDecimal b, String s) {
super(b, s);
}
[...]
}

最佳答案

但是你必须这样做。通过这种方式,您可以决定要在子类中公开什么。此外,某些构造函数可能不适合子类,因此如果您不对其进行显式编码,默认情况下它不会工作。

关于java - 将构造传递到父类(super class),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5969824/

相关文章:

java - 对存储为字符串的 double 进行排序?

java - 在 JSR-303 Bean 验证中获取 HttpServletRequest

java - Do-While 循环和 hasNextInt()

java - classname.class 返回什么?

c# - 通过层次结构的 PostSharp 和方面继承

java - 无状态 session bean 之间的循环依赖 - 好的做法?

javascript - 将带参数的方法添加到 javascript 对象

java - Collections.sort 使用什么设计模式?

java - 如何在android Activity中使用多重继承?

python - 类属性的类型提示