Java 當類的屬性與形參的名字相同時

2021-06-28 04:53:10 字數 658 閱讀 4261

當類的屬性和類方法的形參名字相同時,類方法裡面的變數是指向類屬性還是類方法的形參呢?

這是我剛剛偶爾發現的問題,特地研究了一下。

例如,我現在寫乙個test類:(注意:這裡沒有用this.count,因為this.count是肯定指向類屬性的。)

public class test 

static class secondclass

}}

當形參程式設計mcount的時候呢?

static class secondclass

}

第一段**的執行結果是:

count=1

second=100

得到的結果是,類屬性count並沒有被類方法呼叫,而second=count;語句呼叫的是形參。

第二段**的執行結果是:

count=1

second=1

得到的結果說明,在沒有類屬性跟類方法的形參重名的情況下,呼叫的才是類屬性。

所以,在重名情況下,類方法的形參優先順序比類屬性更高!這就告誡我們,當呼叫類屬性的時候,盡量使用this.變數!這樣才不易造成混亂…保持良好的變成習慣,嗯!

模板形參的名字

它是泛型型別是指定關鍵字class或關鍵字typename在模板引數列表中沒有差異 他們是100 個同義詞在模板宣告 在上面的 中,宣布一些形式 在方括號中的模板引數的泛型 允許一些形式被用在函式定義的任何地方,就像任何其他型別 它可以作為引數型別,返回型別,或宣告該型別的新變數。在所有的情況下,它...

java 形參改變與實參的關係

主函式 change函式 執行結果 結論 變數傳遞到函式中時是形參,是不是陣列都有引數。對於非陣列變數,引用型別形參和實參的位址不一樣但是他們指向的位址是一樣的,但是形參改變時會指向另乙個地方而實參指向的地方值不會變比如下圖 假如有s hel 現在有函式改變他為s pic 實際變化如下圖 基本資料變...

形參的 與 的區別

在定義時,是乙個識別符號,宣告該變數是乙個指標,比如說int p 那p就是乙個指向int型的指標 在呼叫時,p是指指標p指向的那個變數,比如說之前有int a 5 int p a 那麼p的值是a的位址,也就是指標p指向a,p則等於a的值,即p 5。而 則是引用,比如說有定義int a 5 再定義in...