179
人物
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麵向過程。
最後更新:2017-04-02 06:51:58