国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

java參數(shù)是值傳遞還是引用傳遞 Java里什么是引用類型?

Java里什么是引用類型?Java的數(shù)據(jù)都差不多類型:一.數(shù)值型1.1整數(shù)類型(1byte,large,int,long)2.字符類型2.1char3.布爾類型3.1boolean為什么說java里面

Java里什么是引用類型?

Java的數(shù)據(jù)都差不多類型:

一.數(shù)值型

1.1整數(shù)類型(1byte,large,int,long)

2.字符類型

2.1char

3.布爾類型

3.1boolean

為什么說java里面只有值傳遞?

許多初學(xué)者應(yīng)該有這個疑問,java是值傳遞肯定腳注傳遞?

先可以介紹疑問的出處,兩派的觀點。

小A說:java是值傳遞

小A說你看一看上面的代碼,調(diào)用jia方法之前a是1,動態(tài)創(chuàng)建方法之后肯定1,值還沒有變動。

小B說:java是摘錄傳遞

小B說我看上面的代碼,內(nèi)部函數(shù)chang方法之前數(shù)組為{1},全局函數(shù)方法之后是{2},變動了值。

答案:java是值傳達消息小B的觀點是過于片面的,單純的依據(jù)什么值的變化判斷是不是我腳注傳遞是錯誤。

我們這個可以來去看看下面的代碼:

若java是直接引用傳遞,這樣的話數(shù)組a和b在同樣之后,內(nèi)容應(yīng)該互相交換,可是結(jié)果仍然變。

為什么絕對不會變呢?

是因為java方法的參數(shù)傳遞是摘錄拷入訊息傳遞。在調(diào)用swap方法,x變量拷備了a的腳注正指向1,y變量拷入了b的直接引用指向2(如圖)。

2.在調(diào)用int[]txxyyt方法,x對準2,y打向1,ab對準沒變(如圖)。

3.當(dāng)方法結(jié)束后,參數(shù)xy變量失去效果,參數(shù)變量a和b還沒有變動,還沒有造成影響。

歸納什么時候會變化,什么時候不會轉(zhuǎn)變呢?

一個方法沒法可以修改一個基本數(shù)據(jù)類型的參數(shù)(即數(shù)值型或布爾型)。

一個方法可以不決定一個對象參數(shù)的狀態(tài)。一個方法沒法讓對象參數(shù)語句個新的對象。