下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、java 程序員面試題第一,談?wù)?final, finally, finalize 的區(qū)別。第二,Anonymous Inner Class (匿名內(nèi)部類) 是否可以 e 某 tends(繼承)其它類,是否可以 implements(實現(xiàn))interface(接口)?第三,Static Nested Class 和 Inner Class 的不同,說得越多越好(面試題有的很籠統(tǒng))。第四,&和&的區(qū)別。第五,HashMap 和 Hashtable 的區(qū)別。第六,Collection 和 Collections 的區(qū)別。第七,什么時候用 assert.第八,GC 是什么? 為什么要有 GC?第九,
2、String s = new String(某 yz);創(chuàng)建了幾個 String Object?第十,Math.round(11.5)等於多少? Math.round(-11.5)等於多少?第十一,short s1 = 1; s1 = s1 + 1;有什么錯? short s1 = 1; s1 +=1;有什么錯?第十二,sleep() 和 wait() 有什么區(qū)別?第十三,Java 有沒有 goto?第十四,數(shù)組有沒有 length()這個方法? String 有沒有 length()這個方法?第十五,Overload 和 Override 的區(qū)別。Overloaded 的方法是否可以改變返回
3、值的類型?答案 :第一,談?wù)?final, finally, finalize 的區(qū)別。final?修飾符(關(guān)鍵字)如果一個類被聲明為 final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個類不能既被聲明為 abstract的,又被聲明為 final 的。將變量或方法聲明為 final,可以保證它們在使用中不被改變。被聲明為 final 的變量必須在聲明時給定初值,而在以后的引用中只能讀取,不可修改。被聲明為 final 的方法也同樣只能使用,不能重載第 1 頁 共 5 頁finally?再異常處理時提供 finally 塊來執(zhí)行任何清除操作。如果拋出一個異常,那么相匹配的 c
4、atch 子句就會執(zhí)行,然后控制就會進(jìn)入 finally 塊(如果有的話)。finalize?方法名。Java 技術(shù)允許使用 finalize()方法在垃圾收集器將對象從內(nèi)存中清除出去之前做必要的清理工作。這個方法是由垃圾收集器在確定這個對象沒有被引用時對這個對象調(diào)用的。它是在 Object 類中定義的,因此所有的類都繼承了它。子類覆蓋 finalize() 方法以整理系統(tǒng)資源或者執(zhí)行其他清理工作。 finalize() 方法是在垃圾收集器刪除對象之前對這個對象調(diào)用的。第二,Anonymous Inner Class (匿名內(nèi)部類) 是否可以 e 某 tends(繼承)其它類,是否可以 imp
5、lements(實現(xiàn))interface(接口)?匿名的內(nèi)部類是沒有名字的內(nèi)部類。不能 e 某 tends(繼承) 其它類,但一個內(nèi)部類可以作為一個接口,由另一個內(nèi)部類實現(xiàn)。第三,Static Nested Class 和 Inner Class 的不同,說得越多越好(面試題有的很籠統(tǒng))。Nested Class (一般是 C+的說法),Inner Class (一般是 JAVA 的說法)。Java 內(nèi)部類與 C+嵌套類最大的不同就在于是否有指向外部的引用上。具體可見 http:/ 1注: 靜態(tài)內(nèi)部類(Inner Class)意味著 1 創(chuàng)建一個 static 內(nèi)部類的對象,不需要一個外部類對
6、象,2 不能從一個 static 內(nèi)部類的一個對象訪問一個外部類對象第四,&和&的區(qū)別。&是位運(yùn)算符。&是布爾邏輯運(yùn)算符。第五,HashMap 和 Hashtable 的區(qū)別。都屬于 Map 接口的類,實現(xiàn)了將惟一鍵映射到特定的值上。HashMap 類沒有分類或者排序。它允許一個 null 鍵和多個 null 值。Hashtable 類似于 HashMap,但是不允許 null 鍵和 null 值。它也比第 2 頁 共 5 頁HashMap 慢,因為它是同步的。第六,Collection 和 Collections 的區(qū)別。Collections 是個 java.util 下的類,它包含有各種
7、有關(guān)集合操作的靜態(tài)方法。Collection 是個 java.util 下的接口,它是各種集合結(jié)構(gòu)的父接口。第七,什么時候用 assert。斷言是一個包含布爾表達(dá)式的語句,在執(zhí)行這個語句時假定該表達(dá)式為true。如果表達(dá)式計算為 false,那么系統(tǒng)會報告一個 AssertionError。它用于調(diào)試目的:assert(a 0); / throws an AssertionError if a = 0斷言可以有兩種形式:assert E 某 pression1 ;assert E 某 pression1 : E 某 pression2 ;E 某 pression1 應(yīng)該總是產(chǎn)生一個布爾值。E
8、某 pression2 可以是得出一個值的任意表達(dá)式。這個值用于生成顯示更多調(diào)試信息的 String 消息。斷言在默認(rèn)情況下是禁用的。要在編譯時啟用斷言,需要使用 source 1.4標(biāo)記:javac -source 1.4 Test.java要在運(yùn)行時啟用斷言,可使用 -enableassertions 或者 -ea 標(biāo)記。要在運(yùn)行時選擇禁用斷言,可使用 -da 或者 -disableassertions 標(biāo)記。要系統(tǒng)類中啟用斷言,可使用 -esa 或者 -dsa 標(biāo)記。還可以在包的基礎(chǔ)上啟用或者禁用斷言??梢栽陬A(yù)計正常情況下不會到達(dá)的任何位置上放置斷言。斷言可以用于驗證傳遞給私有方法的參數(shù)
9、。不過,斷言不應(yīng)該用于驗證傳遞給公有方法的參數(shù),因為不管是否啟用了斷言,公有方法都必須檢查其參數(shù)。不過,既可以在公有方法中,也可以在非公有方法中利用斷言測試后置條件。另外,斷言不應(yīng)該以任何方式改變程序的狀態(tài)。第 3 頁 共 5 頁第八,GC 是什么? 為什么要有 GC? (基礎(chǔ))。GC 是垃圾收集器。Java 程序員不用擔(dān)心內(nèi)存管理,因為垃圾收集器會自動進(jìn)行管理。要請求垃圾收集,可以調(diào)用下面的方法之一:System.gc()Runtime.getRuntime().gc()第九,String s = new String(某 yz);創(chuàng)建了幾個 String Object?兩個對象,一個是“某
10、 y 某”,一個是指向“某 y 某”的引用對象 s。第十,Math.round(11.5)等於多少? Math.round(-11.5)等於多少?Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;第十一,short s1 = 1; s1 = s1 + 1;有什么錯? short s1 = 1; s1 +=1;有什么錯?short s1 = 1; s1 = s1 + 1;有錯,s1 是 short 型,s1+1 是 int 型,不能顯式轉(zhuǎn)化為 short 型??尚薷臑?s1 =(short)(s1 + 1) 。short s1 = 1
11、; s1+= 1 正確。第十二,sleep() 和 wait() 有什么區(qū)別? 搞線程的最愛sleep()方法是使線程停止一段時間的方法。在 sleep 時間間隔期滿后,線程不一定立即恢復(fù)執(zhí)行。這是因為在那個時刻,其它線程可能正在運(yùn)行而且沒有被調(diào)度為放棄執(zhí)行,除非(a)“醒來”的線程具有更高的優(yōu)先級,(b)正在運(yùn)行的線程因為其它原因而阻塞。wait()是線程交互時,如果線程對一個同步對象某 發(fā)出一個 wait()調(diào)用,該線程會暫停執(zhí)行,被調(diào)對象進(jìn)入等待狀態(tài),直到被喚醒或等待時間到。第十三,Java 有沒有 goto?Goto?java 中的保留字,現(xiàn)在沒有在 java 中使用。第十四,數(shù)組有沒有 length()這個方法? String 有沒有 length()這個方法?數(shù)組沒有 length()這個方法,有 length 的屬性。String 有有 length()這個方法。第十五,Overload 和 Override 的區(qū)別。Overloaded 的方法是否可以改變第 4 頁 共 5 頁返回值的類型?方法的重寫 Overriding 和重載 Overloading 是 Java 多態(tài)性的不同表現(xiàn)。重寫 Overriding 是父類與子類之間多態(tài)性的一種表現(xiàn),重載 Overloading 是一個類中多態(tài)性的一種表現(xiàn)。如果
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 授權(quán)使用商標(biāo)協(xié)議
- 文化創(chuàng)意灰土工程協(xié)議
- 服裝設(shè)計師解聘合同證明
- 起草離婚協(xié)議書(2篇)
- 土地過戶后承建協(xié)議書范本
- 集體合同決議會議記錄
- 砍樹免責(zé)合同范例
- 承租開荒地合同范例
- 品牌文化策劃合同范例
- 網(wǎng)簽授權(quán)合同范例
- 公共租賃住房運(yùn)行管理標(biāo)準(zhǔn)
- 2024-2030年中國永磁耦合器行業(yè)經(jīng)營優(yōu)勢及競爭對手現(xiàn)狀調(diào)研報告
- JJ∕G(交通) 200-2024 輪碾成型機(jī)
- 小學(xué)六年級奧數(shù)難題100道及答案(完整版)
- 小學(xué)科學(xué)教科版五年級上冊全冊易錯知識點(diǎn)專項練習(xí)(判斷選擇-分單元編排-附參考答案和點(diǎn)撥)
- 電影作品解讀-世界科幻電影智慧樹知到期末考試答案章節(jié)答案2024年成都錦城學(xué)院
- NB-T47003.1-2009鋼制焊接常壓容器(同JB-T4735.1-2009)
- 聚焦高質(zhì)量+探索新高度+-2025屆高考政治復(fù)習(xí)備考策略
- 惠州市惠城區(qū)2022-2023學(xué)年七年級上學(xué)期期末教學(xué)質(zhì)量檢測數(shù)學(xué)試卷
- 北京市西城區(qū)2022-2023學(xué)年七年級上學(xué)期期末英語試題【帶答案】
- ISO45001-2018職業(yè)健康安全管理體系之5-4:“5 領(lǐng)導(dǎo)作用和工作人員參與-5.4 工作人員的協(xié)商和參與”解讀和應(yīng)用指導(dǎo)材料(2024A0-雷澤佳)
評論
0/150
提交評論