1、函數(shù)的返回值可以忽略,但異常不可忽略。
如果程序出現(xiàn)異常,但是沒有被捕獲,程序就會終止,這多少會促使程序員開發(fā)出來的程序更健壯一點。而如果使用C語言的error宏或者函數(shù)返回值,調(diào)用者都有可能忘記檢查,從而沒有對錯誤進行處理,結果造成程序莫名其面的終止或出現(xiàn)錯誤的結果。
2、整型返回值沒有任何語義信息。
而異常卻包含語義信息,有時你從類名就能夠體現(xiàn)出來。
3、整型返回值缺乏相關的上下文信息。
異常作為一個類,可以擁有自己的成員,這些成員就可以傳遞足夠的信息。
4、異常處理可以在調(diào)用跳級。
這是一個代碼編寫時的問題:假設在有多個函數(shù)的調(diào)用棧中出現(xiàn)了某個錯誤,使用整型返回碼要求你在每一級函數(shù)中都要進行處理。而使用異常處理的棧展開機制,只需要在一處進行處理就可以了,不需要每級函數(shù)都處理。
更多關于物聯(lián)網(wǎng)培訓的問題,歡迎咨詢千鋒教育在線名師。千鋒教育擁有多年IT培訓服務經(jīng)驗,采用全程面授高品質(zhì)、高體驗培養(yǎng)模式,擁有國內(nèi)一體化教學管理及學員服務,助力更多學員實現(xiàn)高薪夢想。