首頁  >  文章  >  Java  >  c 和java的差別是什麼

c 和java的差別是什麼

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼原創
2019-11-11 13:06:536410瀏覽

c 和java的差別是什麼

Java和C都是指令式語言(Imperative Language),不同的是Java有物件導向(OO)成分在裡面,而C是完全過程導向的,C的高級版本C 、C#支援物件導向。

另外一個不同是,Java跨平台,既不同的作業系統都可以透過JVM來解釋Java程序,而C、C 、C#則是與平台相關的,有些指令只在某些作業系統中才能執行。具體原因是,Java是解釋型語言,所有程式碼都會翻譯成統一的、與系統無關的bytecode,然後放到JVM上運行;而C是編譯式語言,程式碼要先透過編譯器轉換成與系統相關的中間代碼,然後才能運行。

再一個不同是,Java不支援系統調用,既無法與作業系統進行交互,這是由它跨平台的特點決定的,而C則可以調用系統中的指令,如fork() 。這也就是為什麼Java中只有執行緒(Thread)概念而沒有進程(Process)概念,而C兩者都有。

再者,Java無法對記憶體進行控制,而C則可以透過指針對記憶體進行人為分配。

還有一點,Java有Gabbage Collection機制,可以自動回收不再使用的空間,而C則要用free()函數釋放空間。

總的來說,Java比較容易上手,學得快,但對於了解程式語言來說幫助不如C大。

php中文網,大量的免費Java入門教學,歡迎線上學習!

以上是c 和java的差別是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn