java中容易混淆的概念

java中容易混淆的概念

ID:8970650

大小:43.00 KB

頁數(shù):5頁

時(shí)間:2018-04-13

java中容易混淆的概念_第1頁
java中容易混淆的概念_第2頁
java中容易混淆的概念_第3頁
java中容易混淆的概念_第4頁
java中容易混淆的概念_第5頁
資源描述:

《java中容易混淆的概念》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫

1、1.談?wù)刦inal,finally,finalize的區(qū)別  final—修飾符(關(guān)鍵字)如果一個(gè)類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個(gè)類不能既被聲明為abstract的,又被聲明為final的。將變量或方法聲明為final,可以保證它們?cè)谑褂弥胁槐桓淖儭1宦暶鳛閒inal的變量必須在聲明時(shí)給定初值,而在以后的引用中只能讀取,不可修改。被聲明為final的方法也同樣只能使用,不能重載  finally—再異常處理時(shí)提供finally塊來執(zhí)行任何清除操作。如果拋出一個(gè)異常,那么相匹配的catch子句就會(huì)執(zhí)行,然后控制就會(huì)進(jìn)入finally塊(如果有的話)

2、?! inalize—方法名。Java技術(shù)允許使用finalize()方法在垃圾收集器將對(duì)象從內(nèi)存中清除出去之前做必要的清理工作。這個(gè)方法是由垃圾收集器在確定這個(gè)對(duì)象沒有被引用時(shí)對(duì)這個(gè)對(duì)象調(diào)用的。它是在Object類中定義的,因此所有的類都繼承了它。子類覆蓋finalize()方法以整理系統(tǒng)資源或者執(zhí)行其他清理工作。finalize()方法是在垃圾收集器刪除對(duì)象之前對(duì)這個(gè)對(duì)象調(diào)用的。2.AnonymousInnerClass(匿名內(nèi)部類)是否可以extends(繼承)其它類,是否可以implements(實(shí)現(xiàn))interface(接口)?  匿名的內(nèi)部類是沒有名字的內(nèi)部類。不能extends

3、(繼承)其它類,但一個(gè)內(nèi)部類可以作為一個(gè)接口,由另一個(gè)內(nèi)部類實(shí)現(xiàn)。3.StaticNestedClass和InnerClass的不同?! estedClass(一般是C++的說法),InnerClass(一般是JAVA的說法)。Java內(nèi)部類與C++嵌套類最大的不同就在于是否有指向外部的引用上?! ∽ⅲ红o態(tài)內(nèi)部類(InnerClass)意味著1創(chuàng)建一個(gè)static內(nèi)部類的對(duì)象,不需要一個(gè)外部類對(duì)象,2不能從一個(gè)static內(nèi)部類的一個(gè)對(duì)象訪問一個(gè)外部類對(duì)象4.&和&&的區(qū)別  &是位運(yùn)算符。&&是布爾邏輯運(yùn)算符。5.HashMap和Hashtable的區(qū)別  都屬于Map接口的類,實(shí)現(xiàn)了將惟

4、一鍵映射到特定的值上?! ashMap類沒有分類或者排序。它允許一個(gè)null鍵和多個(gè)null值。Hashtable類似于HashMap,但是不允許null鍵和null值。它也比HashMap慢,因?yàn)樗峭降摹?.Collection和Collections的區(qū)別  Collections是個(gè)java.util下的類,它包含有各種有關(guān)集合操作的靜態(tài)方法?! ollection是個(gè)java.util下的接口,它是各種集合結(jié)構(gòu)的父接口。2.什么時(shí)候用assert斷言是一個(gè)包含布爾表達(dá)式的語句,在執(zhí)行這個(gè)語句時(shí)假定該表達(dá)式為true。如果表達(dá)式計(jì)算為false,那么系統(tǒng)會(huì)報(bào)告一個(gè)Assertio

5、nerror。它用于調(diào)試目的:assert(a>0);//throwsanAssertionerrorifa<=0斷言可以有兩種形式:assertExpression1;assertExpression1:Expression2;Expression1應(yīng)該總是產(chǎn)生一個(gè)布爾值。Expression2可以是得出一個(gè)值的任意表達(dá)式。這個(gè)值用于生成顯示更多調(diào)試信息的String消息。斷言在默認(rèn)情況下是禁用的。要在編譯時(shí)啟用斷言,需要使用source1.4標(biāo)記:javac-source1.4Test.java要在運(yùn)行時(shí)啟用斷言,可使用-enableassertions或者-ea標(biāo)記。要在運(yùn)行時(shí)選擇禁用斷

6、言,可使用-da或者-disableassertions標(biāo)記。要系統(tǒng)類中啟用斷言,可使用-esa或者-dsa標(biāo)記。還可以在包的基礎(chǔ)上啟用或者禁用斷言??梢栽陬A(yù)計(jì)正常情況下不會(huì)到達(dá)的任何位置上放置斷言。斷言可以用于驗(yàn)證傳遞給私有方法的參數(shù)。不過,斷言不應(yīng)該用于驗(yàn)證傳遞給公有方法的參數(shù),因?yàn)椴还苁欠駟⒂昧藬嘌?,公有方法都必須檢查其參數(shù)。不過,既可以在公有方法中,也可以在非公有方法中利用斷言測(cè)試后置條件。另外,斷言不應(yīng)該以任何方式改變程序的狀態(tài)。3.GC是什么?為什么要有GC?(基礎(chǔ))  GC是垃圾收集器。Java程序員不用擔(dān)心內(nèi)存管理,因?yàn)槔占鲿?huì)自動(dòng)進(jìn)行管理。要請(qǐng)求垃圾收集,可以調(diào)用下面的方

7、法之一:System.gc()Runtime.getRuntime().gc()Strings=newString("xyz");創(chuàng)建了幾個(gè)StringObject?  兩個(gè)對(duì)象,一個(gè)是“xyx”,一個(gè)是指向“xyx”的引用對(duì)象s。  Math.round(11.5)等於多少?Math.round(-11.5)等於多少?  Math.round(11.5)返回(long)12,Math.round

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

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

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