五道互聯(lián)網(wǎng)常見的java異常筆試題

五道互聯(lián)網(wǎng)常見的java異常筆試題

長沙牛耳教育      2022-04-30 16:42:02     35

五道互聯(lián)網(wǎng)常見的java異常筆試題,所謂異常,就是程序運行過程中出現(xiàn)的非正常情況。所有的程序都存在一些未知的問題或是錯誤,如果這些問題不進行處理,可能會給用

課程價格 請咨詢

上課時段: 授課校區(qū):

詳細介紹

    所謂異常,就是程序運行過程中出現(xiàn)的非正常情況。所有的程序都存在一些未知的問題或是錯誤,如果這些問題不進行處理,可能會給用戶造成一定的損失。因此對于Java異常中的問題,會是面試官經(jīng)常詢問的。

    1、throw和throws的區(qū)別?

    答:throw和throws的區(qū)別:throw代表動作,表示拋出一個異常的動作;throws代表一種狀態(tài),代表方法可能有異常拋出;throw用在方法實現(xiàn)中,而throws用在方法聲明中;throw只能用于拋出一種異常,而throws可以拋出多個異常。

    2、final、finally、finalize有什么區(qū)別?

    答:final:

    (1)修飾符(關(guān)鍵字)如果一個類被聲明為final,意味著它不能再派生新的子類,不能作為父類被繼承。因此一個類不能及被聲明為abstract,又被聲明為final的。

    (2)將變量或方法聲明為final,可以保證他們使用中不被改變。被聲明為final的變量必須在聲明時給定初值,而以后的引用中只能讀取,不可修改,被聲明為final的方法也同樣只能使用,不能重載。

    Finally:

    在異常處理時提供finally塊來執(zhí)行清楚操作。如果拋出一個異常,那么相匹配的catch語句就會執(zhí)行,然后控制就會進入finally塊,如果有的話。

    finalize:

    是方法名。java技術(shù)允許使用finalize()方法在垃圾收集器將對象從內(nèi)存中清除之前做必要的清理工作。這個方法是在垃圾收集器在確定了,被清理對象沒有被引用的情況下調(diào)用的。

    finalize是在Object類中定義的,因此,所有的類都繼承了它。子類可以覆蓋finalize()方法,來整理系統(tǒng)資源或者執(zhí)行其他清理工作。

    3、try-catch-finally中哪個部分可以省略?

    答:catch和finally語句塊可以省略其中一個。

    4、try,catch,finally都有return語句時執(zhí)行哪個?

    答:(1)不論是否出現(xiàn)異常,finally塊中代碼都會執(zhí)行;

    (2)當(dāng)try和catch中有return時,finally仍然會執(zhí)行;

    (3)finally是在return后面的表達式運算后執(zhí)行的(此時并沒有返回運算后的值,而是先把要返回的值保存起來,不管finally中的代碼怎么樣,返回的值都不會改變,任然是之前保存的值),所以函數(shù)返回值是在finally執(zhí)行前確定的;

    (4)finally中最好不要包含return,否則程序會提前退出,返回值不是try或catch中保存的返回值。

    因此,任何執(zhí)行try或者catch中的return語句之前,都會先執(zhí)行finally語句,如果finally存在的話。

    如果finally中有return語句,那么程序就return了,所以finally中的return是一定會被return的,編譯器把finally中的return實現(xiàn)為一個warning。

    5、常見的異常類有哪些?

    答:

 以上就是長沙牛耳教育java培訓(xùn)機構(gòu)的小編針對“五道互聯(lián)網(wǎng)常見的java異常筆試題”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。

Java筆試題

培訓(xùn)啦提醒您:交易時請核實對方資質(zhì),對于過大宣傳或承諾需謹(jǐn)慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險,謹(jǐn)防上當(dāng)。