作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
PMD 定义规则CallSuperInConstructor .当编译器不需要时,在构造函数中添加对 super()
的无参数调用的目的是什么?
我意识到我可以禁用该规则或使用 @SuppressWarnings
使每个类中的规则静音。
This question处理为什么应该在构造函数中调用 super(...)
。我的问题是当编译器不需要它时为什么要添加一个无参数的 super()
调用。
最佳答案
如果你的类(class)
Object
类,它有许多重载的构造函数然后当您显式调用 super()
时,它可以避免混淆调用了哪个类/父类(super class)构造函数。
说明上述内容的示例:
class Foo {
final int x;
Foo(int x) {
this.x = x;
}
Foo() {
this.x = 1;
}
}
class Bar extends Foo {
Bar(int x) {
}
}
问题 - new Bar(10).x
的值是多少?
关于java - PMD CallSuperInConstructor 是什么原因?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54563817/
PMD 定义规则CallSuperInConstructor .当编译器不需要时,在构造函数中添加对 super() 的无参数调用的目的是什么? 我意识到我可以禁用该规则或使用 @SuppressWa
我是一名优秀的程序员,十分优秀!