能有人請解釋不this
在第一個構造的情況下輸出0?Java this.classProperty與classProperty引入參數變量名稱衝突?
如果參數變量名是相同的類的屬性名稱和我使用的方法中該屬性。 java是怎樣解釋「class property」或「argument variable」的?
沒有this
:
public User(int userId){
userId = userId;
}
隨着this
:
public User(int userId){
this.userId = userId;
}
public void PrintUserId(){
System.out.println(this.userId);
}
User firstUser = new User(123);
firstUser.PrintUserId();
// 0沒有這個
// 123這個
感謝,但如果我使用公共用戶(INT編號){用戶id =標識;},它更新類屬性。 – talktopk 2012-04-15 19:01:28
@talktopk:是的,因爲在這種情況下,參數不會影響字段。 – 2012-04-15 19:01:55
所以有一個偏好我猜如果發生衝突。 – talktopk 2012-04-15 19:01:55