異常經典面試題

2021-10-06 10:36:35 字數 1076 閱讀 3158

public

class

testexception

catch

(annoyance a)

}catch

(sneeze s)

finally

}}

預計輸出

caught annoyance

hello world

自己在idea裡面敲了一下

顯然小瞧這種面試題的後果就是氣的**,那麼認真分析一波吧!

很明顯這是乙個try-catch的巢狀題目,首先做這種題之前,要理清繼承關係

throw new sneeze(); 丟擲的物件是sneeze型別的,是annoyance的子類

由最近的catch (annoyance a)來接收,於是輸出caught annoyance,到這邊一般沒什麼問題

然後再throw a; 這個a是什麼型別的呢?如果認為是annoyance類的,那麼答案應該和我一樣❌,如果認為是sneeze,則正確。因此這是乙個多型問題,可以看作annoyance a = new sneeze();父類引用指向子類物件,throw丟擲的還是實際物件還是sneeze型別,因此catch(sneeze s)可以接收,輸出:system.out.println(「caught sneeze」);

最後finally再輸出hello world

於是就是輸出:

caught annoyance

caught sneeze

hello world

經典面試題

1.以下三條輸出語句分別輸出什麼?char str1 abc char str2 abc const char str3 abc const char str4 abc const char str5 abc const char str6 abc cout boolalpha str1 str2 ...

經典面試題

我的老同學現在富得流油。他開創了乙個軟體公司,開發了一系列軟體,生意越做越大。今天他來到這個城市後馬上打 給我。是我啊!聽出來了嗎?是這樣的,我到這兒的大學招畢業生,要在這兒呆上五天,咱哥們趁這個時間好好聚一聚。我做東!既然他要做東,我理所當然順水推舟。人家是老闆,不吃白不吃!我來到他下榻的賓館,看...

經典面試題

分兩個情況 perfork模式 worker模式 前者程序模式 後者執行緒模式 故檢視方法也有區別 oldboy.log 參考 分析 此類問題是運維工作中最常見的問題。可以演變成分析日誌,檢視tcp各個狀態連線數,檢視單ip連線數排名等等 第一類 過濾網域名稱方法 方法很多 這裡給出六種為例。還可以...