Exception Introduction
Exception คือ สภาวะหรือการทำงานผิดปกติที่เกิดขึ้นและขัดขวางการทำงานปกติของโปรแกรมทำให้โปรแกรมหยุดการทำงานและไม่สามารถทำงานต่อไปได้
Exception Handling คือกลไกในการจัดการ exception ซึ่งจะทำการโอนการดำเนินการของ program ที่เกิด Exception ไปจัดการอย่างเหมาะสมเมื่อเกิด exception
ทำไมต้องจัดการ ? เพื่อให้ application ของคุณที่เกิด exception นั้น ทำงานต่อไปได้พร้อมทั้งจัดการกับ exception นั้นด้วย
ตัวอย่างสถานะการณ์
Main
statement 1;
statement 2;
statement 3; // เกิด exception
statement 4;
statement 5;
จากสถานะการณ์ จุดมุ่งหมายของ program คือทำงานทั้ง 5 statement แต่ดันเกิด exception ที่ statement 3 ทำให้ statement 4,5 ส่วนที่เหลือของโปรแกรมจะไม่ถูกดำเนินการ แต่ถ้ามีการจัดการกับ exception ที่เกิดขึ้น statement 4,5 ซึ่งเป็นส่วนที่เหลือก็จะดำเนินการต่อจนจบ
Hierarchy of Java Exception Classes
ประเภทของ Exception มี 3 ประเภท
1) Checked Exception
เป็น Class ที่ extend Throwable ยกเว้น RuntimeException และ Error ซึ่งจะ checked exception ที่ compile-time
2) Unchecked Exception
เป็น Class ที่ extend RuntimeException ไม่ได้ checked exception ที่ compile-time แต่จะ checked exception ที่ runtime
3) Error
เป็น Class ที่ extend Throwable ไม่รวม Class Exception ซึงเป็นความผิดปกติที่จัดการไม่ได้เมื่อเกิดขึ้น
ตัวอย่าง code ที่ทำให้เกิด Exception
หารด้วย 0
int ans = 100/0; //ArithmeticException
ค่าเป็น null
String name = null;
System.out.println(name.length()); // NullPointerException
ผิดFormat
String name = "abc";
int ans = Interger.parseInt(name); //NumberFormatException
ระบุ Index ผิด
int a[] = new int[5];
a[10] = 50; // ArrayIndexOutofBoundsException
5 keywords ที่ใช้จัดการกับ exception ซึงจะกล่าวในบทความถัดไป
1.try
2.catch
3.finally
4.throw
5.throws
ไม่มีความคิดเห็น:
แสดงความคิดเห็น