Joã*_*ues 3 java object instance-variables local-variables
当你将一个本地字符串的值赋给一个类的实例变量时,它是否创建了一个新对象(String)?
public void setNumber(String number){
if(number == null || number.length() != 9)
return;
this.number = number;
}
Run Code Online (Sandbox Code Playgroud)
这样做隐式工作是这样的:
this.number = new String(number);
Run Code Online (Sandbox Code Playgroud)
需要理解的重要细节是,当您将 aString作为参数传递给setNumber方法时,您不是在传递对象,而是在传递引用,因此当您这样做时
this.number = number;
Run Code Online (Sandbox Code Playgroud)
您将引用作为参数传递,然后将其分配给this.number变量。
上述语句中没有隐式对象构造。