亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

異常類定義

異常類定義

aluckdog 2021-08-25 16:45:31
我Exception像NullpointerException類一樣打開子類,它有構造函數,沒有其他方法。JVM 如何知道要顯示此類異常的情況?
查看完整描述

1 回答

?
一只斗牛犬

TA貢獻1784條經驗 獲得超2個贊

JVM 會在特定情況下自動拋出一些異常。NullPointerException 或 OutOfMemoryError 就在其中。

因為 sun/oracle 已經定義了它們的確切用途,何時拋出它們的邏輯被編碼到 JVM 本身中。(例如,如果您的應用程序需要的內存超過可用內存,JVM 知道它必須拋出 OutOfMemoryError;如果您嘗試訪問 null 對象的字段或方法,它知道它必須拋出 NullPoinerException)。

這些規則在 JVM 中被明確指定和編碼。

在這種情況下,它們不同于您為自己使用而創建的任何“自定義”異常。顯然,JVM 不知道它們的語義并且永遠不會自動拋出它們。相反,你必須自己扔掉它們。

順便說一句:如果您想知道,為什么您不需要 NullPointerException 的 try/catch 塊:這是因為它們繼承自 RuntimeException。根據定義,從 RuntimeException 繼承的任何異常都不需要聲明或明確捕獲。(您可以明確聲明和捕獲它們,但這是可選的)


查看完整回答
反對 回復 2021-08-25
  • 1 回答
  • 0 關注
  • 160 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號