持續(xù)更新:
1、java有哪些基本數(shù)據(jù)類型?String是不是數(shù)據(jù)類型?它們有何區(qū)別?
? ? ? java共提供了八種基本數(shù)據(jù)類型
? ? ? ? 其中有六種是數(shù)字類型(四個整型,兩個浮點)
? ? ? ? 字節(jié)型 ? ? ? ?byte ? ? ? ? ? ?8位
????????短整型 ? ? ? ?short ? ? ? ? ? 16位
????????整型???? ? ? ? ?int????????????????32位
? ? ? ? 長整型 ? ? ? ?long ? ? ? ? ? ? 64位
????????單精度型 ? ? float????????????32位
? ? ? ? 雙精度型 ? ?double ? ? ? ? 64位
? ? ? ? 一種字符類型
? ? ? ? 字符型 ? ? ? ?char ? ? ? ? ? ?8位
? ? ? ? 布爾類型 ? ?boolean ? ? ? ?8位
String本身是對象,不是數(shù)據(jù)類型,所以是不同的,String的變量是對String這個類的引用。
2、數(shù)據(jù)類型之間的轉(zhuǎn)換
? ? ? ? 在java里面,我們一般傳參數(shù)是通過命令行傳參數(shù),這是,傳進來的參數(shù)是String類型,但是有的時候,我們只需要整型或雙精度類型,我們這時不能直接使用傳進來的參數(shù),需要對其類型轉(zhuǎn)換:
????????用Integer.parseInt去把String轉(zhuǎn)換為整型,用Double.parseDouble去把String轉(zhuǎn)換為雙精度類型。
3、數(shù)組和集合(eg:Map、List)
? ? ? ? 數(shù)組與集合的區(qū)別一:數(shù)組聲明了它容納的元素的類型,而集合不聲明,這是由于集合以超類Object形式來存儲他們的元素。
? ? ? ? 數(shù)組與集合的區(qū)別二:一個數(shù)組實例具有固定的大小,不能伸縮,集合則可以根據(jù)需要動態(tài)來改變大小。
? ? ? ? 數(shù)組與集合的區(qū)別三:數(shù)組是一種可讀/可寫數(shù)據(jù)結(jié)構(gòu),是沒有辦法去創(chuàng)建一個只讀的數(shù)組,然而可以使用集合提供的ReadOnly方法,只讀方式來使用集合,該方法將返回一個集合的只讀版本。
5、java多態(tài)的實現(xiàn)(繼承、重載、覆蓋)
? ? 多態(tài)可分為:
(1)編譯多態(tài):主要是體現(xiàn)在重載,系統(tǒng)在編譯就能確定調(diào)用重載函數(shù)的哪個版本
(2)運行多態(tài):主要體現(xiàn)在OO設(shè)計的繼承上,子類的對象也是父類的對象,即上溯造型,所以子類對象可以作為父類對象使用,父類的對象變量可以指向子類對象。因此通過一個父類發(fā)出的方法調(diào)用可能執(zhí)行的是方法在父類中的實現(xiàn),也可能是某個子類中的實現(xiàn),它是由運行時刻具體的對象類型決定的。
注:OO設(shè)計原則見:OO設(shè)計原則 -- OO設(shè)計的原則及設(shè)計過程的全面總結(jié) - CSDN博客