国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

java的值傳遞和引用傳遞

2019-11-14 08:48:28
字體:
來源:轉載
供稿:網友

java的值傳遞和引用傳遞

1. “=“是賦值操作。

任何包含=的如+=、-=、 /=等等,都內含了賦值操作。 不再是你以前理解的數學含義了,而+ - * /和 = 在java中更不是一個級別,換句話說, = 是一個動作,一個可以改變內存狀態的操作,一個可以改變變量的符號,而+ - * /卻不會。 這里的賦值操作其實是包含了兩個意思: 1、放棄了原有的值或引用; 2、得到了 = 右側變量的值或引用。Java中對 = 的理解很重要啊!!可惜好多人忽略了,或者理解了卻沒深思過。

2. 對于基本數據類型變量,“=”操作是完整地復制了變量的值。

換句話說,“=之后,你我已無關聯”;至于基本數據類型,就不在這科普了。

3. 對于非基本數據類型變量,“=” 操作是復制了變量的引用。

換句話說,“嘿,= 左側的變量,你丫別給我瞎動!咱倆現在是一根繩上的螞蚱,除非你再被 = 一次放棄現有的引用!!上面說了 = 是一個動作,所以我把 = 當作動詞用啦!!”。而非基本數據類型變量你基本上可以

4. 參數本身是變量,參數傳遞本質就是一種 = 操作。

參數是變量,所有我們對變量的操作、變量能有的行為,參數都有。所以把C語言里參數是傳值啊、傳指針啊的那套理論全忘掉,參數傳遞就是 = 操作。

作者:Jack Tan 鏈接:https://www.zhihu.com/question/31203609/answer/51473602 來源:知乎 著作權歸作者所有,轉載請聯系作者獲得授權。

總結

(1):“在Java里面參數傳遞都是按值傳遞”這句話的意思是:按值傳遞是傳遞的值的拷貝,按引用傳遞其實傳遞的是引用的地址值,所以統稱按值傳遞。

(2):在Java里面只有基本類型和按照下面這種定義方式的String是按值傳遞,其它的都是按引用傳遞。

直接使用雙引號定義字符串方式:String str = “Java私塾”;


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 永吉县| 许昌市| 天柱县| 南宁市| 舟曲县| 清河县| 凤城市| 游戏| 海口市| 庄河市| 韩城市| 周宁县| 舟曲县| 萨迦县| 清河县| 霍城县| 鹤壁市| 新野县| 勐海县| 沙洋县| 双鸭山市| 开化县| 新龙县| 南陵县| 柞水县| 沿河| 双流县| 永新县| 清新县| 永年县| 遂宁市| 平塘县| 峨山| 洛隆县| 昭通市| 泗阳县| 云龙县| 安徽省| 句容市| 电白县| 陆良县|