ข้อยกเว้น: ข้อยกเว้นบางอย่างเกิดจากข้อผิดพลาดของผู้ใช้บางอย่างเกิดจากข้อผิดพลาดของโปรแกรมและข้อผิดพลาดอื่น ๆ เกิดจากข้อผิดพลาดทางกายภาพ
คำหลักในการจัดการข้อยกเว้น: ลองจับในที่สุดโยนโยนโยน
หมายเหตุ:
การจำแนกผิดปกติ:
ไวยากรณ์:
ลอง {// บล็อกรหัสที่ต้องฟัง} catch (ชื่อข้อยกเว้นประเภทข้อยกเว้น /e) {// จัดการบล็อกรหัสที่จับข้อผิดพลาดที่ลองฟังเพื่อโยนชื่อข้อยกเว้น /e; // Thorw หมายถึงการโยนข้อยกเว้นให้โยนประเภทข้อยกเว้นใหม่ ("กำหนดเอง");} ในที่สุด {// คำสั่งในบล็อกสุดท้ายจะถูกเรียกใช้งานโดยไม่คำนึงว่าข้อยกเว้นเกิดขึ้นหรือไม่} ตัวปรับเปลี่ยนชื่อวิธีการค่าเมธอด () โยนประเภทข้อยกเว้น {// การโยนใช้เพื่อประกาศข้อยกเว้นเท่านั้นตัวอย่างรหัส: (ลองและจับและสุดท้าย)
Public Class Exceptiontest {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {อินพุตสแกนเนอร์ = สแกนเนอร์ใหม่ (System.in); ลอง {// ฟังบล็อกรหัส int a = input.nextint (); int b = input.nextint (); ผลรวมสองครั้ง = A/B; System.out.println (ผลรวม); } catch (inputmismatchexception e) {system.out.println ("เฉพาะป้อนตัวเลข"); } catch (arithmeticexception e) {system.out.println ("ตัวหารไม่สามารถเป็น 0"); } catch (Exception e) {// ข้อยกเว้นคือระบบชั้นพาเรนต์ System.out.println ("ข้อยกเว้นอื่น ๆ เกิดขึ้น"); } ในที่สุด {// ไม่ว่าจะมีข้อยกเว้นหรือไม่, System.out.println ("โปรแกรมสิ้นสุด"); -ตัวอย่างรหัส: (โยนคำหลัก)
นำเข้า java.util.inputmismatchexception; นำเข้า java.util.scanner; การทดสอบระดับสาธารณะระดับสาธารณะ {โมฆะสาธารณะคงที่หลัก (สตริง [] args) {อินพุตสแกนเนอร์ = สแกนเนอร์ใหม่ (System.in); ลอง {// ฟังบล็อกรหัส int a = input.nextint (); int b = input.nextint (); ผลรวมสองครั้ง = A/B; System.out.println (ผลรวม); } catch (inputmismatchexception e) {// catch (ชื่อข้อยกเว้นของประเภทข้อยกเว้น) System.out.println ("เฉพาะป้อนตัวเลข"); โยน e; // ด้านบนข้อยกเว้นที่จับได้โดยการจับ // โยน InputMismatchexception ใหม่ (); เหมือนกับข้างบน} catch (arithmeticexception e) {system.out.println ("ตัวส่วนไม่สามารถเป็น 0"); โยน arithmeticexception ใหม่ ("ตัวส่วนคือ 0 โยนข้อยกเว้น"); // ด้านบนข้อยกเว้น arithmeticexception} catch (Exception e) {// ข้อยกเว้นคือคลาสหลักของข้อยกเว้นทั้งหมด System.out.println ("ข้อยกเว้นอื่น ๆ เกิดขึ้น"); } ในที่สุด {// ไม่ว่าจะมีข้อยกเว้นหรือไม่ในที่สุดก็จะถูกเรียกใช้งาน System.out.println ("โปรแกรมสิ้นสุด"); -ตัวอย่างรหัส: (โยน)
ระดับสาธารณะโยน {int a = 1; int b = 0; โมฆะสาธารณะออก () โยน arithmeticexception {// ประกาศข้อยกเว้นที่อาจถูกโยนลงไปอาจมีข้อยกเว้นหลายข้อคั่นด้วยเครื่องหมายจุลภาค {// supert code block int sum = a/b; 0 ");} ในที่สุด {// ไม่ว่าจะมีข้อยกเว้นเกิดขึ้นหรือไม่มันจะถูกดำเนินการในที่สุด System.out.println (" โปรแกรมสิ้นสุด ");}} โมฆะคงที่สาธารณะหลัก (สตริง [] args) {โยน t = การโยนใหม่ (); t.out (); // เรียกวิธีการโยน arithmeticexception ใหม่ ("ตัวส่วนคือ 0 และโยนข้อยกเว้น"); // วิธีการที่เรียกว่าจะตัดสินใจว่าจะโยนข้อยกเว้น/** วิธีการโยนครั้งที่สอง* /// arithmeticexception a = arithmeticexception ใหม่ ("ตัวหารคือ 0 และโยนข้อยกเว้น"); // โยน a;}}