ใช่ เราสามารถมีบล็อก catch ที่ว่างเปล่าได้ แต่นี่เป็นแนวปฏิบัติที่ไม่ดี เพื่อนำไปใช้ใน Java
โดยทั่วไป บล็อกการลอง มีโค้ดที่สามารถสร้างข้อยกเว้น หากมีข้อผิดพลาดในบล็อกการลอง เช่น หารด้วยศูนย์ ไม่พบไฟล์ ฯลฯ มันจะสร้าง ข้อยกเว้น ที่ถูกจับโดย บล็อกการดักจับ . บล็อกจับ จับ และ ด้ามจับ ข้อยกเว้น หากบล็อก catch ว่างเปล่า เราจะไม่รู้ว่าเกิดอะไรขึ้นในโค้ดของเรา
ตัวอย่าง
public class EmptyCatchBlockTest { public static void main(String[] args) { try { int a = 4, b = 0; int c = a/b; } catch(ArithmeticException ae) { // An empty catch block } } }
ในโค้ดด้านบนนี้ บล็อก catch จะตรวจจับข้อยกเว้นแต่ไม่พิมพ์สิ่งใดในคอนโซล ทำให้ผู้ใช้คิดว่าโค้ดไม่มีข้อยกเว้น ดังนั้นจึงควรพิมพ์ข้อความแสดงข้อยกเว้นที่เกี่ยวข้องในบล็อก catch
ผลลัพธ์
// An empty catch block