2018年最新java面試題整理

2018年最新java面試題整理

ID:22121444

大?。?00.00 KB

頁數(shù):34頁

時間:2018-10-27

2018年最新java面試題整理_第1頁
2018年最新java面試題整理_第2頁
2018年最新java面試題整理_第3頁
2018年最新java面試題整理_第4頁
2018年最新java面試題整理_第5頁
資源描述:

《2018年最新java面試題整理》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。

1、word資料下載可編輯1基礎篇1.1基本功1.1.1面向?qū)ο筇卣鞣庋b,繼承,多態(tài)和抽象1、封裝封裝給對象提供了隱藏內(nèi)部特性和行為的能力。對象提供一些能被其他對象訪問的方法來改變它內(nèi)部的數(shù)據(jù)。在Java當中,有3種修飾符:public,private和protected。每一種修飾符給其他的位于同一個包或者不同包下面對象賦予了不同的訪問權限。下面列出了使用封裝的一些好處:1)通過隱藏對象的屬性來保護對象內(nèi)部的狀態(tài)。2)提高了代碼的可用性和可維護性,因為對象的行為可以被單獨的改變或者是擴展。3)禁止對象之間

2、的不良交互提高模塊化2、繼承繼承給對象提供了從基類獲取字段和方法的能力。繼承提供了代碼的重用行,也可以在不修改類的情況下給現(xiàn)存的類添加新特性。3、多態(tài)多態(tài)是編程語言給不同的底層數(shù)據(jù)類型做相同的接口展示的一種能力。一個多態(tài)類型上的操作可以應用到其他類型的值上面。4、抽象抽象是把想法從具體的實例中分離出來的步驟,因此,要根據(jù)他們的功能而不是實現(xiàn)細節(jié)來創(chuàng)建類。Java支持創(chuàng)建只暴漏接口而不包含方法實現(xiàn)的抽象的類。這種抽象技術的主要目的是把類的行為和實現(xiàn)細節(jié)分離開。1.1.2final,finally,fina

3、lize的區(qū)別1、final修飾符(關鍵字)如果一個類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個類不能既被聲明為abstract的,又被聲明為final的。將變量或方法聲明為final,可以保證它們在使用中不被改變。被聲明為final的變量必須在聲明時給定初值,而在以后的引用中只能讀取,不可修改。被聲明為final的方法也同樣只能使用,不能重載。2、finally在異常處理時提供finally塊來執(zhí)行任何清除操作。如果拋出一個異常,那么相匹配的catch子句就會執(zhí)行,

4、然后控制就會進入finally塊(如果有的話)。3、finalize方法名。Java技術允許使用finalize()方法在垃圾收集器將對象從內(nèi)存中清除出去之前做必要的清理工作。這個方法是由垃圾收集器在確定這個對象沒有被引用時對這個對象調(diào)用的。它是在Object類中定義的,因此所有的類都繼承了它。子類覆蓋finalize()方法以整理系統(tǒng)資源或者執(zhí)行其他清理工作。finalize()方法是在垃圾收集器刪除對象之前對這個對象調(diào)用的。專業(yè)技術資料word資料下載可編輯1.1.1int和Integer有什么區(qū)別

5、int是基本數(shù)據(jù)類型?,而Integer是其包裝類,注意是一個類。?為什么要提供包裝類呢????一是為了在各種類型間轉(zhuǎn)化,通過各種方法的調(diào)用。否則你無法直接通過變量轉(zhuǎn)化。1.1.2重載和重寫的區(qū)別override(重寫)  1.方法名、參數(shù)、返回值相同?! ?.子類方法不能縮小父類方法的訪問權限。  3.子類方法不能拋出比父類方法更多的異常(但子類方法可以不拋出異常)?! ?.存在于父類和子類之間?! ?.方法被定義為final不能被重寫。overload(重載)  1.參數(shù)類型、個數(shù)、順序至少有一個不

6、相同?! ?.不能重載只有返回值不同的方法名?! ?.存在于父類和子類、同類中。區(qū)別點重載重寫(覆寫)英文OverloadingOveriding定義方法名稱相同,參數(shù)的類型或個數(shù)不同方法名稱、參數(shù)類型、返回值類型全部相同權限對權限沒要求被重寫的方法不能擁有更嚴格的權限范圍發(fā)生在一個類中發(fā)生在繼承類中1.1.3抽象類和接口有什么區(qū)別接口是公開的,里面不能有私有的方法或變量,是用于讓別人使用的,而抽象類是可以有私有方法或私有變量的,另外,實現(xiàn)接口的一定要實現(xiàn)接口里定義的所有方法,而實現(xiàn)抽象類可以有選擇地重

7、寫需要用到的方法,一般的應用里,最頂級的是接口,然后是抽象類實現(xiàn)接口,最后才到具體類實現(xiàn)。?還有,接口可以實現(xiàn)多重繼承,而一個類只能繼承一個超類,但可以通過繼承多個接口實現(xiàn)多重繼承,接口還有標識(里面沒有任何方法,如Remote接口)和數(shù)據(jù)共享(里面的變量全是常量)的作用。1.1.4說說反射的用途及實現(xiàn)Java反射機制主要提供了以下功能:在運行時構造一個類的對象;判斷一個類所具有的成員變量和方法;調(diào)用一個對象的方法;生成動態(tài)代理。反射最大的應用就是框架Java反射的主要功能:?-確定一個對象的類?-取出

8、類的modifiers,數(shù)據(jù)成員,方法,構造器,和超類.?-專業(yè)技術資料word資料下載可編輯找出某個接口里定義的常量和方法說明.?-創(chuàng)建一個類實例,這個實例在運行時刻才有名字(運行時間才生成的對象).?-取得和設定對象數(shù)據(jù)成員的值,如果數(shù)據(jù)成員名是運行時刻確定的也能做到.?-在運行時刻調(diào)用動態(tài)對象的方法.?-創(chuàng)建數(shù)組,數(shù)組大小和類型在運行時刻才確定,也能更改數(shù)組成員的值.反射的應用很多,很多框架都有用到spring的ioc/di也是反射…

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。