伊久综精品69国产奶水自拍视频,在线免费观看午夜福利,高潮国产剧情自拍尤物,中文一级毛片免费看

將想法與焦點和您一起共享

Java與C/C++的差異發布者:本站     時間:2020-05-06 15:05:08

熟悉C語言和C++語言的讀者一定想搞清楚這個問題,實際上,Java確實是從C語言和C++語言繼承了許多成份,甚至可以將Java看成是類C語言發展和衍生的產物.比如Java語言的變量聲明,操作符形式,參數傳遞,流程控制等方面和C語言,C++語言完全相同.盡管如此,Java和C語言,C++語言又有許多差別,主要表現在如下幾個方面:
 

 

(1) Java中對內存的分配是動態的,它采用面向對象的機制,采用運算符new為每個對象分配內存空間,而且,實際內存還會隨程序運行情況而改變.程序運行中,每個, Java系統自動對內存進行掃描,對長期不用的空間作為”垃圾”進行收集,使得系統資源得到更充分地利用.按照這種機制,程序員不必關注內存管理問題,這使Java程序的編寫變得簡單明了,并且避免了了由于內存管理方面的差錯而導致系統出問題.而C語言通過malloc()和free()這兩個庫函數來分別實現分配內在和釋放內存空間的,C++語言中則通過運算符new和delete來分配和釋放內存.在C和C++這仲機制中,程序員必須非常仔細地處理內存的使用問題.一方面,如果對己釋放的內存再作釋放或者對未曾分配的內存作釋放,都會造成死機;而另一方面,如果對長期不用的或不再使用的內存不釋放,則會浪費系統資源,甚至因此造成資源枯竭.
 

 

(2) Java不在所有類之外定義全局變量,而是在某個類中定義一種公用靜態的變量來完成全局變量的功能.
 

 

(3) Java不用goto語句,而是用try-catch-finally異常處理語句來代替goto語句處理出錯的功能.
 

 

(4) Java不支持頭文件,面C和C++語言中都用頭文件來定義類的原型,全局變量,庫函數等,這種采用頭文件的結構使得系統的運行維護相當繁雜.
 

 

(5) Java不支持宏定義,而是使用關鍵字final來定義常量,在C++中則采用宏定義來實現常量定義,這不得于程序的可讀性.
 

 

(6) Java對每種數據類型都分配固定長度.比如,在Java中,int類型總是32位的,而在C和C++中,對于不同的平臺,同一個數據類型分配不同的字節數,同樣是int類型,在PC機中為二字節即16位,而在VAX-11中,則為32位.這使得C語言造成不可移植性,而Java則具有跨平臺性(平臺無關性).
 

 

(7) 類型轉換不同.在C和C++中,可通過指針進行任意的類型轉換,常常帶來不安全性,而在Java中,運行時系統對對象的處理要進行類型相容性檢查,以防止不安全的轉換.
 

 

(8) 結構和聯合的處理.在C和C++中,結構和聯合的所有成員均為公有,這就帶來了安全性問題,而在Java中根本就不包含結構和聯合,所有的內容都封裝在類里面.
 

 

(9) Java不再使用指針.指針是C和C++中最靈活,也最容易產生錯誤的數據類型.由指針所進行的內存地址操作常會造成不可預知的錯誤,同時通過指針對某個內存地址進行顯式類型轉換后,可以訪問一個C++中的私有成員,從而破壞安全性.而Java對指針進行完全地控制,程序員不能直接進行任何指針操作.



選擇我們,優質服務,不容錯過
1. 優秀的網絡資源,強大的網站優化技術,穩定的網站和速度保證
2. 15年上海網站建設經驗,優秀的技術和設計水平,更放心
3. 全程省心服務,不必擔心自己不懂網絡,更省心。
------------------------------------------------------------
24小時聯系電話:021-58370032
主站蜘蛛池模板: 大理市| 大同县| 舒城县| 云龙县| 隆安县| 齐河县| 兰考县| 公安县| 长岭县| 古丈县| 城固县| 呼伦贝尔市| 道真| 贡山| 成安县| 岑巩县| 建始县| 山阴县| 新闻| 饶平县| 和硕县| 长治县| 东台市| 城市| 聊城市| 扶余县| 高碑店市| 比如县| 普定县| 门头沟区| 鞍山市| 三亚市| 兰州市| 台中市| 体育| 隆昌县| 富平县| 景德镇市| 乌什县| 广安市| 印江|