โยนคำสำคัญเข้ามา Java
⚡ สรุปอย่างชาญฉลาด
โยนคำสำคัญเข้ามา Java ใช้ในการประกาศเมธอดเพื่อแจ้งให้ทราบถึงข้อยกเว้นที่ตรวจสอบได้ซึ่งเมธอดนั้นอาจยกขึ้นระหว่างการทำงาน โดยจะมอบหมายการจัดการข้อยกเว้นให้กับเมธอดที่เรียกใช้แทนที่จะบังคับให้มีบล็อก try-catch อยู่ภายใน

Java พ่นคำสำคัญ
การขอ Java พ่นคำสำคัญ ใช้เพื่อประกาศข้อมูลข้อยกเว้นที่อาจเกิดขึ้นระหว่างการทำงานของโปรแกรม มันให้ข้อมูลเกี่ยวกับข้อยกเว้นแก่โปรแกรมเมอร์ เป็นการดีกว่าที่จะจัดเตรียมโค้ดการจัดการข้อยกเว้นเพื่อให้สามารถรักษาโฟลว์การทำงานของโปรแกรมตามปกติได้
Java โยนไวยากรณ์ข้อยกเว้น
สมมติว่าในโปรแกรม Java ของคุณ คุณใช้เมธอดไลบรารีที่ส่งข้อยกเว้น
ในโปรแกรมของคุณ คุณจะจัดการกับข้อยกเว้นนี้โดยใช้ try & catch
import java.io.*; class file1{ public static void main(String[] args) { try{ FileWriter file = new FileWriter("c:\\Data1.txt"); file.write("Guru99"); file.close(); } catch(IOException){} } }
หากคุณไม่จัดการกับข้อยกเว้นในบล็อก try และ catch การคอมไพล์จะล้มเหลว แต่เกือบทุกเมธอดในไลบรารี Java หรือแม้แต่เมธอดที่ผู้ใช้กำหนดเองก็อาจโยนข้อยกเว้นได้ การจัดการกับข้อยกเว้นทั้งหมดโดยใช้บล็อก try และ catch อาจยุ่งยากและจะขัดขวางประสิทธิภาพการทำงานของโปรแกรมเมอร์
ดังนั้น java จึงมีตัวเลือกให้ โดยที่เมื่อใดก็ตามที่คุณใช้โค้ดที่มีความเสี่ยงในคำจำกัดความของเมธอด คุณจะประกาศมัน พ่น ข้อยกเว้นโดยไม่ใช้ try catch
Java โยนไวยากรณ์ข้อยกเว้น
method (Arguments) throws Exception1,Exception2,Exception,… {}
โยนคำสำคัญเข้ามา Java ตัวอย่าง
ลองพิจารณาตัวอย่างเดียวกันกับข้างบนด้วยการพ่นในการประกาศเมธอด
import java.io.*; class file1{ public static void main(String[] args) throws IOException{ FileWriter file = new FileWriter("c:\\Data1.txt"); file.write("Guru99"); file.close(); } }
หมายเหตุ: เพื่อให้โค้ดข้างต้นทำงานได้อย่างถูกต้อง ก่อนอื่นให้สร้างไฟล์ข้อความเปล่าชื่อ Data1.txt ในไดรฟ์ C ของคุณ โดยสรุปแล้ว มีสองวิธีในการจัดการกับข้อยกเว้น:
- ใส่รหัสที่ทำให้เกิดข้อยกเว้นใน try และ catch block
- ประกาศวิธีการที่จะโยนข้อยกเว้น
หากไม่ทำอย่างใดอย่างหนึ่งในสองข้อข้างต้น ผู้รวบรวม ทำให้เกิดข้อผิดพลาด แนวคิดในการบังคับใช้กฎนี้ก็คือ ในฐานะโปรแกรมเมอร์ คุณต้องตระหนักว่าโค้ดบางส่วนอาจมีความเสี่ยงและอาจทำให้เกิดข้อยกเว้นได้
ความแตกต่างระหว่างการขว้างและการขว้างคืออะไร?
| โยน | พ่น |
|---|---|
| มันถูกใช้เพื่อสร้างวัตถุข้อยกเว้นใหม่และโยนมัน | มันถูกใช้ในการกำหนดวิธีการ เพื่อประกาศว่ามีการเรียกวิธีการที่มีความเสี่ยง |
| การใช้คีย์เวิร์ด Throw คุณสามารถประกาศข้อยกเว้นได้ครั้งละหนึ่งรายการเท่านั้น | การใช้คีย์เวิร์ด Throws คุณสามารถประกาศข้อยกเว้นได้หลายรายการในแต่ละครั้ง |
| ตัวอย่าง: โยน IOException ใหม่ (“ไม่สามารถเปิดการเชื่อมต่อ”); | ตัวอย่าง: พ่น IOException, ArrayIndexBoundException; |

