变态重口极致另类在线-波多久久夜色精品国产-波多野结衣在线观看一区-波多野结衣在线观看一区二区-污污的网站免费阅读-污污视频网址

當前位置:首頁文章首頁 IT學院 Java

教你區別Java引用與C指針

作者:  來源:  發布時間:2011-5-17 17:46:19  點擊:

現在聽說有很多的朋友不能正確的將Java引用于C指針區別開來,所以特意提供這篇文章給大家學習分享一下,希望能給各位帶來幫助!

首先,在Java中,不存在引用傳遞(也就是地址傳遞)一說,全部都是值傳遞,自然,在使用對象時實際上都是使用的引用
  
  Java語言明確說明取消了指針,因為指針往往是在帶來方便的同時也是導致代碼不安全的根源,同時也會使程序的變得非常復雜難以理解,濫用指針寫成的代碼不亞于使用早已臭名昭著的"GOTO"語句。Java放棄指針的概念絕對是極其明智的。但這只是在Java語言中沒有明確的指針定義,實質上每一個new語句返回的都是一個指針的引用,只不過在大多時候Java中不用關心如何操作這個"指針",更不用象在操作C++的指針那樣膽戰心驚。
  
  非也,基本類型數據存放在Stack中,存放的是數據。而產生對象時,只把對象的reference存放在stack中,用于指向某個對象,對象本身存放在Heap中。
  
  還有,調用方法時傳遞的參數以及在調用中創建的臨時變量都保存在棧(Stack)中,速度較快。其他變量,如靜態變量、實例變量等,都在堆(Heap)中創建,速度較慢。另外,依賴于具體的編譯器/JVM,局部變量還可能得到進一步優化。
  
  從實現上來講,引用可以理解為一種受限的指針,引用底層可以采用指針來實現,也可以采用句柄的方式實現。早期jvm一般采用句柄的方式,現在的jvm,比如sun的,IBM的,一般就是用指針來實現。
  
  不過從語言的角度來將,沒有必要把java的引用和C的指針來比較。
  
  指針是可以進行與整數做加減運算的,兩個指針之間也可以進行大小比較運算和相減運算。
  
  引用不行,只能進行賦值運算。
  
  當然有區別
  
  Aa=newA();
  
  你可以a=a+1;嗎?指針就可以

文章評論

軟件按字母排列: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
主站蜘蛛池模板: 美女被啪全免视频软件 | 日韩精品福利视频一区二区三区 | 亚洲精品456在在线播放 | 黄色一级视频播放 | 国产免费怕怕免费视频观看 | 一级毛片无毒不卡直接观看 | 国产你懂的在线 | ass日本医生pics | 国产高清一区二区三区 | 黄色大片视频网站 | 国产极品久久 | 亚洲三级在线免费观看 | 99精彩视频在线观看 | 日韩激情成人 | 1204曰韩欧美成人看片 | 国产国语videosex护士 | 国精品日韩欧美一区二区三区 | 欧美视频综合 | 日本三级香港三级国产三级 | 黄色免费大片 | 欧美日韩视频在线第一区二区三区 | 国产一区二区久久精品 | xxxx日本在线播放免费不卡 | 日韩精品一区二区三区四区 | 黄片毛片免费在线观看 | 国产精品一区二区三区高清在线 | 精品在线观看国产 | 一级做a爰片久久毛片免费看 | 午夜成私人影院在线观看 | 国产日韩亚洲欧美 | 国产精品国产三级在线高清观看 | 99视频免费 | 欧美精品在线观看视频 | 在线播放a | 一个人看的www日本视频 | 五月丁色| 大陆黄色一级片 | 亚洲欧美日韩中文字幕在线不卡 | 亚洲综合区小说区激情区噜噜 | 欧美禁片在线观看免费 | 在线观看免费a∨网站 |