女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>java源碼下載>

java泛型方法參數(shù)傳遞

大?。?/span>0.9 MB 人氣: 2017-09-27 需要積分:2

  Java參數(shù),不管是原始類型還是引用類型,傳遞的都是副本(有另外一種說法是傳值,但是說傳副本更好理解吧,傳值通常是相對傳址而言)。

  如果參數(shù)類型是原始類型,那么傳過來的就是這個參數(shù)的一個副本,也就是這個原始參數(shù)的值,這個跟之前所談的傳值是一樣的。如果在函數(shù)中改變了副本的值不會改變原始的值。

  如果參數(shù)類型是引用類型,那么傳過來的就是這個引用參數(shù)的副本,這個副本存放的是參數(shù)的地址。如果在函數(shù)中沒有改變這個副本的地址,而是改變了地址中的 值,那么在函數(shù)內(nèi)的改變會影響到傳入的參數(shù)。如果在函數(shù)中改變了副本的地址,如new一個,那么副本就指向了一個新的地址,此時傳入的參數(shù)還是指向原來的 地址,所以不會改變參數(shù)的值。

  基本類型參數(shù)傳遞:不改變值

  java泛型方法參數(shù)傳遞

  引用類型參數(shù)傳遞:改變值

  java泛型方法參數(shù)傳遞

  無論是什么語言,要討論參數(shù)傳遞方式,就得從內(nèi)存模型說起,主要是我個人覺得從內(nèi)存模型來說參數(shù)傳遞更為直觀一些。閑言少敘,下面我們就通過內(nèi)存模型的方式來討論一下Java中的參數(shù)傳遞。

  這里的內(nèi)存模型涉及到兩種類型的內(nèi)存:棧內(nèi)存(stack)和堆內(nèi)存(heap)?;绢愋妥鳛閰?shù)傳遞時,傳遞的是這個值的拷貝。無論你怎么改變這個拷貝,原值是不會改變的。看下邊的一段代碼,然后結(jié)合內(nèi)存模型來說明問題:

  publicclassParameterTransfer { publicstaticvoidmain(String[] args) { intnum = 30; System.out.println( “調(diào)用add方法前num=”+ num); add(num); System. out.println( “調(diào)用add方法后num=”+ num); } publicstaticvoidadd( intparam) { param = 100; } }

  這段代碼運行的結(jié)果如下:

  調(diào)用 add方法前 num= 30調(diào)用 add方法后 num= 30

  程序運行的結(jié)果也說明這一點,無論你在add()方法中怎么改變參數(shù)param的值,原值num都不會改變。

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?