當您在方法中聲明局部變量時使用相同的名稱和類型,如實例變量 - 是否意味着實例變量在該方法內變爲「不可見」?在聲明局部變量var後,實例變量變爲不可見
public class Test {
Card card;
public void foo(){
Card card = new Card();
card.test();
}
}
所以我聲明並實例化foo()方法中的局部變量卡。然後調用局部變量的test()方法。如果我刪除了Card card = new Card();
,則會爲實例變量調用test()方法。
它看到這個在構造函數中,這裏的構造函數參數隱藏實例成員共同的地方。除此之外,這可能是您的實例成員應具有更多描述性或唯一名稱的症狀。 – 2010-10-27 17:13:07
這在setter方法中也很常見。 – ColinD 2010-10-27 17:14:35