Catching Exception จะตรวจจับทั้งข้อยกเว้นที่ตรวจสอบและรันไทม์ ข้อยกเว้นรันไทม์แสดงถึงปัญหาที่เป็นผลโดยตรงจากปัญหาการเขียนโปรแกรม และไม่ควรตรวจพบเนื่องจากไม่สามารถคาดหวังได้อย่างสมเหตุสมผลว่าจะกู้คืนจากปัญหาเหล่านี้หรือจัดการได้
สามารถจัดการข้อยกเว้นรันไทม์ได้หรือไม่
ไม่เหมือนกับข้อยกเว้นที่ไม่ถือว่าเป็นข้อยกเว้นรันไทม์ ไม่มีการตรวจสอบข้อยกเว้นรันไทม์ … ผู้ใช้ไม่ควรพยายามจัดการกับข้อยกเว้นประเภทนี้เพราะจะแก้ไขปัญหาเท่านั้นและไม่สามารถแก้ไขได้อย่างสมบูรณ์
มีการตรวจสอบข้อยกเว้นรันไทม์หรือไม่
ข้อยกเว้นที่ไม่ได้ตรวจสอบคือ ไม่ได้ตรวจสอบโดยคอมไพเลอร์ สิ่งเหล่านี้เรียกว่าข้อยกเว้นรันไทม์ข้อยกเว้นที่ไม่ได้ตรวจสอบจะเข้ามาในชีวิตและเกิดขึ้นในโปรแกรม เมื่อมีการเรียกใช้รหัสบั๊กกี้ ใน Java คอมไพเลอร์ไม่ได้บังคับให้เมธอดสมาชิกประกาศข้อยกเว้นที่ไม่ได้ตรวจสอบในการประกาศเมธอด
จับข้อยกเว้นที่ไม่ได้เลือกได้ไหม
ในบทช่วยสอน ฉันพบว่าโค้ดของคุณไม่สามารถจัดการ Unchecked Exception ได้ เช่น เราไม่สามารถใช้บล็อก try/catch ได้ และตัวอย่างก็เป็นข้อยกเว้น เช่น ArrayIndexOutOfBoundsException, NullPointerException แต่ข้อยกเว้นเหล่านี้สามารถจัดการได้โดยใช้บล็อก try/catch
จับข้อยกเว้นได้ไหม
ข้อผิดพลาด 2: จับข้อยกเว้นที่ไม่เจาะจงข้อยกเว้นในวิธีการหลักของแอปพลิเคชัน Java SE ของคุณ … แต่จำไว้ว่าบล็อก catch แรกที่จัดการคลาส exception หรือ superclass ตัวใดตัวหนึ่งจะดักจับมัน ดังนั้น อย่าลืมเลือกคลาสที่เจาะจงที่สุดก่อน