JAVA和C/C++的區別

最近在學校Java語言,發現和C++還是很多相似的,所以在學習中,整理了一些,以後會繼續更新補充,適合初學者,很多不對的地方,感謝大家指出,謝謝了。

1、Java中有byte整型類型,代表8個字節,c/c++中最小是char表示16位。

2、在默認情況下小數都被看做double型,在聲明float時也必須在小數後面添加F或f,不然如float a = 1.9還是會被看做double型。必須加F/f。

3、Java中的字符char型是16位。

4、布爾類型是boolean,不同於C/C++的bool關鍵字。

5、Java聲明常量是關鍵字final,不同於C/C++的const。

6、str.trim()方法返回字符串的副本,忽略前導空格和尾部空格。不錯

7、Java中的對字符串分割用split,C/C++中用strtok,但是Java中多了個split(Stringstr,int limit),可以用limit限制分割的次數。

8、Java中的日期時間格式化功能很強大,直接用Date date = newDate();生成的變量包含了當前的時間所有信息,無需像C/C++一樣進行轉換。

9、Java中有可變字符串類,StringBuilde類生成的字符串 ,當對其修改時所花費的時間遠遠小與普通的String類,當需要對字符串頻繁修改時,應該使用該類。

10、在靜態方法中不可以使用this關鍵字,C/C++也是。在靜態方法中不可以直接調用非靜態方法。

11、Java中所有的成員方法都定義在類內部,不同於C/C++。

12、==符號比較的是兩個對象引用的地址是否相等,equals()方法比較的是兩個對象引用所指的對象是否相等。

13、Java中的包裝類可以把基本類型包裝成類,定義了很多實用的成員方法。

Integer、Boolean.etc.

14、Java中類的繼承使用關鍵字extends, c++中使用:

All inheritance in Java is public inheritance,there isno analog to the C++ features of private and protected inheritance.

15、Java不支持多繼承,一個子類只能繼承一個父類。

16、Java的使用方法iterator()要求容器返回一個Iterator。第一次調用Iterator的next()方法時,它返回序列的第一個元素。不同於C++中的begin(),end()迭代器。

可以用hasNext()判斷容器是否結束。

17、Java中沒有運算符重載。

18、Java中有大數類,可以表示任意的長度BigInteger 比C++方便。

19、Java語言中,由於把二維數組看作是數組的數組,數組空間不是連續分配的,所以不要求二維數組每一維的大小相同。Ragged array。

20、養成使用try{},catch(Exceptione ){ e.printStackTrace()}的習慣,當程序出現bug時可以快速知道何處出現錯誤。so as c++。

21、super 關鍵字用在當子類重載父類的方法時,用於明確告訴編譯器此處調用superclass的method,而不是調用自身的方法。在C++中相似的是作用域運算符::

22、Java中不需要手動聲明一個方法時虛函數,動態綁定也是自動的,C++手動,這點很高級。


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