91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java 使用異常的好處總結

發布時間:2020-10-18 14:49:48 來源:腳本之家 閱讀:156 作者:彭呈祥 欄目:編程語言

java 使用異常的好處總結

一、分析

Java異常處理機制確實比較慢,這個“比較慢”是相對于諸如String、Integer等對象來說,單單從對象的創建上來說,new一個IOException會比String慢5倍,這從異常的處理機制上也可以解釋:因為它執行fillStackTrace方法,要記錄當前棧的快照,而String類則是直接申請創建一個內存創建對象,異常類慢一籌也在所難免。   

 二、場景

我們知道異常是主邏輯的例外邏輯,舉個例子來說,比如我們能在馬路上走(這時主邏輯),突然開過一輛車,我要避讓(這是受檢異常,必須處理),繼續走著,不然一架飛機從我頭頂飛過(非受檢異常),我們可以選擇繼續行走(不捕捉),也可以選擇指責噪音污染(捕捉,主邏輯的補充處理),在繼續走著,突然一顆流星砸下來,這就沒有選擇,屬于錯誤,不能做任何處理。

任何一個事物的處理都可能產生非預期的結果,問題是需要以何種手段來處理,如果不使用異常就需要依靠返回值的不同來進行處理了,這嚴重嚴重失去了面向對象的風格。

例如,用戶登錄的用例,就會在”例外事件“中說明”連續3次登陸失敗即鎖定用戶賬號“,這就是登陸事件的一個異常處理,具體到我們的程序中就是:

<span >   public voidlogin(){ 
     try{ 
       //正常登陸 
     }catch(InvalidLoginExceptionlie){ 
       //用戶名無效 
     }catch(InvalidPasswordExceptionpe){ 
       //密碼錯誤的異常 
     }catch(TooMouchLoginExceptiontmle){ 
       //多次登陸失敗的異常 
     }     
   }</span> 

如此設計則可以讓我們的login方法更符合實際的處理邏輯,同時使主邏輯(正常登陸,try代表塊)更加清晰。使用異常有很多優點,比如可讓正常代碼和異常代碼分離,能快速查找問題(棧信息快照)等,但是異常有一個缺點:性能比較慢。
但是我們不能因為性能問題而放棄使用異常,難道我們的系統連如此微小的性能消耗都不允許嗎?

  三、建議 

        性能問題不是拒絕異常的借口

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临武县| 周口市| 南宫市| 昭觉县| 平原县| 防城港市| 天镇县| 邵阳县| 东安县| 视频| 富平县| 钟山县| 海阳市| 安远县| 新巴尔虎右旗| 佛山市| 忻州市| 双柏县| 镇赉县| 西乌珠穆沁旗| 木里| 武宣县| 定州市| 建湖县| 永善县| 崇文区| 南召县| 新兴县| 当雄县| 洪雅县| 佛坪县| 潼关县| 临湘市| 东乡族自治县| 嘉善县| 武义县| 阿拉善左旗| 巨野县| 蚌埠市| 定襄县| 凭祥市|