c、c++、java的區別

c++和java的區別
一羣寫機頂盒程序的人在用c++寫程序的時候感覺C++太過於瑣碎,於是發明了java
1:c+程序直接運行於OS上;java程序運行於jvm上
2:執行效率,c++明顯比java要快很多,因爲java是通過運行在虛擬機上的。
 具體事例請查看上一篇博客,那個程序是java寫的。
3:java一次編譯,處處運行。c++換了平臺就得重新編譯。
4:垃圾回收機制。c++中new分配的內存必須由程序顯式收回,否則會造成內存泄漏。
 java有垃圾回收機制。參見《深入理解計算機系統》 虛存那一張。
 5:指針:java是沒有指針的。但是java對象本身就是指針,如果把一個java對象付給另一個對象的話,
   兩個對象指向的是同一個內存空間。因此,如果要實現值拷貝的話,還需要實現“克隆”接口。
  c++的一個妙處就在於指針。有時候,我寫c++程序僅僅是爲了使用指針。
6:java無枚舉類型,聯合體。
7:java使用unicode字符集,而c++使用ANSI字符集。
8:java通過接口實現多繼承。
9:java無操作符重載。
10:java中的final關鍵字和c++中的const關鍵字類似,不過也有區別:final的成員函數是不能被覆蓋的。
11:java無缺省實參。
12:c++支持隱式的類型轉換。java必須顯式的轉換。

暫時總結這麼多。

c和c++的區別:
1:類
2:引用。
3:函數重載
4:操作符重載。
6:繼承
7:new delete
8:c++面向對象,c面向過程。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章