【发布时间】:2020-08-05 08:23:52
【问题描述】:
public class A {
int i;
int j;
A() {
i = 3; // I have not intialized j;
}
public static void main(String[] args) {
A obj = new A();
// Why obj.j is printed if my constructor had initialized int j?
System.out.println(obj.i + obj.j);
}
}
如果我们的编码构造函数替换了默认构造函数,那么我没有在构造函数中初始化的引用值如何获得默认值
【问题讨论】:
-
未初始化的字段获得默认值。构造函数不需要设置它们。
-
"为什么打印 obj.j" 你没有直接打印
obj.j。
标签: java class constructor