更新時間:2020-10-30 16:13:10 來源:動力節(jié)點 瀏覽2291次
Java的知識點其實非常多,并且有些知識點比較難以理解,有時候我們自以為理解了某些內(nèi)容,其實可能只是停留在表面上,沒有理解其底層實現(xiàn)原理。
紙上得來終覺淺,絕知此事要躬行。筆者之前對每部分的內(nèi)容對做了比較深入的學習以及代碼實現(xiàn),基本上比較全面地講述了每一個Java基礎(chǔ)知識點,當然可能有些遺漏和錯誤,歡迎讀者指正。
這里把重要的面試知識點都寫出來了,讓大家對知識框架有個基本輪廓。
Java基礎(chǔ)學習總結(jié)
每部分內(nèi)容會重點寫一些常見知識點,方便復(fù)習和記憶,但是并不是全部內(nèi)容,詳細的內(nèi)容請參見具體的文章地址。
面向?qū)ο笕筇匦?/strong>
繼承:一般類只能單繼承,內(nèi)部類實現(xiàn)多繼承,接口可以多繼承封裝:訪問權(quán)限控制public>protected>包>private內(nèi)部類也是一種封裝多態(tài):編譯時多態(tài),體現(xiàn)在向上轉(zhuǎn)型和向下轉(zhuǎn)型,通過引用類型判斷調(diào)用哪個方法(靜態(tài)分派)。運行時多態(tài),體現(xiàn)在同名函數(shù)通過不同參數(shù)實現(xiàn)多種方法(動態(tài)分派)。
基本數(shù)據(jù)類型
1基本類型位數(shù),自動裝箱,常量池2例如byte類型是1byte也就是8位,可以表示的數(shù)字是-128到127,因為還有一個0,加起來一共是256,也就是2的八次方。32位和64位機器的int是4個字節(jié)也就是32位,char是1個字節(jié)就是8位,float是4個字節(jié),double是8個字節(jié),long是8個字節(jié)。3基本數(shù)據(jù)類型的包裝類只在數(shù)字范圍-128到127中用到常量池,會自動拆箱裝箱,其余數(shù)字范圍的包裝類則會新建實例
String及包裝類
1 String類型是final類型,在堆中分配空間后內(nèi)存地址不可變。2底層是final修飾的char[]數(shù)組,數(shù)組的內(nèi)存地址同樣不可變。但實際上可以通過修改char[n]='a'來進行修改,不會改變String實例的內(nèi)存值,不過在jdk中,用戶無法直接獲取char[],也沒有方法能操作該數(shù)組。所以String類型的不可變實際上也是理論上的不可變。所以我們在分配String對象以后,如果將其="abc",那也只是改變了引用的指向,實際上沒有改變原來的對象。3 StringBuffer和StringBuilder底層是可變的char[]數(shù)組,繼承父類AbstractStringBuilder的各種成員和方法,實際上的操作都是由父類方法來完成的。
final關(guān)鍵字
1 final修飾基本數(shù)據(jù)類型保證不可變2 final修飾引用保證引用不能指向別的對象,否則會報錯。3 final修飾類,類的實例分配空間后地址不可變,子類不能重寫所有父類方法。因此在cglib動態(tài)代理中,不能為一個類的final修飾的函數(shù)做代理,因為cglib要將被代理的類設(shè)置為父類,然后再生成字節(jié)碼。final修飾方法,子類不能重寫該方法。
抽象類和接口
1抽象類可以有方法實現(xiàn)。抽象類可以有非final成員變量。抽象方法要用abstract修飾。抽象類可以有構(gòu)造方法,但是只能由子類進行實例化。2接口可以用extends加多個接口實現(xiàn)多繼承。接口只能有public final類型的成員變量。接口只能有抽象方法,不能有方法體、接口不能實例化,但是可以作為引用類型。
這里在給大家提供幾個Java精華視頻教程,幫助正在學習或者復(fù)習的朋友,更能快速掌握:
Java免費視頻教程:http://m.ilovecolors.com.cn/javavideo.html
以上就是動力節(jié)點java培訓機構(gòu)的小編針對“Java精華視頻教程,免費下載學習”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。