千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > Error和Exception區別是什么?

Error和Exception區別是什么?

來源:千鋒教育
發布人:qyf
時間: 2022-08-02 17:13:00 1659431580

千鋒教育

  Error 和 Exception 區別是什么?

  Error 類型的錯誤通常為虛擬機相關錯誤,如系統崩潰,內存不足,堆棧溢出等,編譯器不會對這類錯誤進行檢測,JAVA 應用程序也不應對這類錯誤進行捕獲,一旦這類錯誤發生,通常應用程序會被終止,僅靠應用程序本身無法恢復。

  Exception 類的錯誤是可以在應用程序中進行捕獲并處理的,通常遇到這種錯誤,應對其進行處理,使應用程序可以繼續正常運行。

  運行時異常和一般異常(受檢異常)區別是什么?

  運行時異常包括 RuntimeException 類及其子類,表示 JVM 在運行期間可能出現的異常。 Java 編譯器不會檢查運行時異常。

  受檢異常是Exception 中除 RuntimeException 及其子類之外的異常。 Java 編譯器會檢查受檢異常。

  RuntimeException異常和受檢異常之間的區別:是否強制要求調用者必須處理此異常,如果強制要求調用者必須進行處理,那么就使用受檢異常,否則就選擇非受檢異常(RuntimeException)。一般來講,如果沒有特殊的要求,我們建議使用RuntimeException異常。

  JVM 是如何處理異常的?

  在一個方法中如果發生異常,這個方法會創建一個異常對象,并轉交給 JVM,該異常對象包含異常名稱,異常描述以及異常發生時應用程序的狀態。創建異常對象并轉交給 JVM 的過程稱為拋出異常。可能有一系列的方法調用,最終才進入拋出異常的方法,這一系列方法調用的有序列表叫做調用棧。

  JVM 會順著調用棧去查找看是否有可以處理異常的代碼,如果有,則調用異常處理代碼。當 JVM 發現可以處理異常的代碼時,會把發生的異常傳遞給它。如果 JVM 沒有找到可以處理該異常的代碼塊,JVM 就會將該異常轉交給默認的異常處理器(默認處理器為 JVM 的一部分),默認異常處理器打印出異常信息并終止應用程序。

  NoClassDefFoundError 和 ClassNotFoundException 區別?

  NoClassDefFoundError 是一個 Error 類型的異常,是由 JVM 引起的,不應該嘗試捕獲這個異常。

  引起該異常的原因是 JVM 或 ClassLoader 嘗試加載某類時在內存中找不到該類的定義,該動作發生在運行期間,即編譯時該類存在,但是在運行時卻找不到了,可能是變異后被刪除了等原因導致;

  ClassNotFoundException 是一個受查異常,需要顯式地使用 try-catch 對其進行捕獲和處理,或在方法簽名中用 throws 關鍵字進行聲明。當使用 Class.forName, ClassLoader.loadClass 或 ClassLoader.findSystemClass 動態加載類到內存的時候,通過傳入的類路徑參數沒有找到該類,就會拋出該異常;另一種拋出該異常的可能原因是某個類已經由一個類加載器加載至內存中,另一個加載器又嘗試去加載它。

  更多關于“java培訓”的問題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學,課程大綱緊跟企業需求,更科學更嚴謹,每年培養泛IT人才近2萬人。不論你是零基礎還是想提升,都可以找到適合的班型,千鋒教育隨時歡迎你來試聽。

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
久久亚洲中文字幕精品一区四,亚洲日本另类欧美一区二区,久久久久久久这里只有免费费精品,高清国产激情视频在线观看
图片区国产激情一区二区三区 | 最新亚洲日韩精品 | 亚欧乱色熟女一区二区 | 亚洲国产动漫日韩精品一区 | 日本亚洲精品色婷婷在线影院 | 亚洲成a人v电影在线点播 |