网上的答案说创建对象时,成员变量如果没有显式赋值,则默认初始化为对应的值,如整型默认 0,String 默认 null 等等。这里的 0 和 null 是在哪里赋值给成员变量的? google 搜到一个答案说是在构造方法默认给成员变量赋初始值的。
class A{
public String n;
public A(){
this.n = null; // 如果 n 没有被显式赋值,这里被 JVM 默认添加赋值语句???
}
}