Chương trình Java để tạo ngoại lệ tùy chỉnh

Trong ví dụ này, chúng ta sẽ học cách tạo ngoại lệ được kiểm tra và bỏ chọn tùy chỉnh trong Java.

Để hiểu ví dụ này, bạn nên có kiến ​​thức về các chủ đề lập trình Java sau:

  • Ngoại lệ Java
  • Xử lý ngoại lệ trong Java
  • Lớp và đối tượng Java

Ví dụ 1: Chương trình Java để tạo ngoại lệ đã kiểm tra tùy chỉnh

 import java.util.ArrayList; import java.util.Arrays; // create a checked exception class class CustomException extends Exception ( public CustomException(String message) ( // call the constructor of Exception class super(message); ) ) class Main ( ArrayList languages = new ArrayList(Arrays.asList("Java", "Python", "JavaScript")); // check the exception condition public void checkLanguage(String language) throws CustomException ( // throw exception if language already present in ArrayList if(languages.contains(language)) ( throw new CustomException(language + " already exists"); ) else ( // insert language to ArrayList languages.add(language); System.out.println(language + " is added to the ArrayList"); ) ) public static void main(String() args) ( // create object of Main class Main obj = new Main(); // exception is handled using try… catch try ( obj.checkLanguage("Swift"); obj.checkLanguage("Java"); ) catch(CustomException e) ( System.out.println("(" + e + ") Exception Occured"); ) ) )

Đầu ra

 Swift được thêm vào ArrayList (CustomException: Java đã tồn tại)

Trong ví dụ trên, chúng tôi đã mở rộng Exceptionlớp để tạo một ngoại lệ tùy chỉnh có tên CustomException. Ở đây, chúng ta gọi hàm tạo của Exceptionlớp từ lớp CustomException bằng cách sử dụng super()từ khóa.

Bên trong phương thức checkLanguage(), chúng tôi đã kiểm tra điều kiện ngoại lệ và nếu ngoại lệ xảy ra, khối try… catch sẽ xử lý ngoại lệ.

Đây, đây là ngoại lệ được kiểm tra. Chúng ta cũng có thể tạo lớp ngoại lệ không được kiểm tra trong Java. Để tìm hiểu thêm về ngoại lệ đã chọn và đã bỏ chọn, hãy truy cập Java Exception.

Ví dụ 2: Tạo lớp ngoại lệ không được chọn tùy chỉnh

 import java.util.ArrayList; import java.util.Arrays; // create a unchecked exception class class CustomException extends RuntimeException ( public CustomException(String message) ( // call the constructor of RuntimeException super(message); ) ) class Main ( ArrayList languages = new ArrayList(Arrays.asList("Java", "Python", "JavaScript")); // check the exception condition public void checkLanguage(String language) ( // throw exception if language already present in ArrayList if(languages.contains(language)) ( throw new CustomException(language + " already exists"); ) else ( // insert language to ArrayList languages.add(language); System.out.println(language + " is added to the ArrayList"); ) ) public static void main(String() args) ( // create object of Main class Main obj = new Main(); // check if language already present obj.checkLanguage("Swift"); obj.checkLanguage("Java"); ) )

Đầu ra

 Swift is added to the ArrayList Exception in thread "main" CustomException: Java already exists at Main.checkLanguage(Main.java:21) at Main.main(Main.java:37)

Trong ví dụ trên, chúng tôi đã mở rộng RuntimeExceptionlớp để tạo một lớp ngoại lệ tùy chỉnh không được kiểm tra.

Ở đây, bạn có thể nhận thấy rằng, chúng tôi chưa khai báo bất kỳ khối try… catch nào . Đó là bởi vì ngoại lệ không được kiểm tra được kiểm tra trong thời gian chạy.

Bên cạnh đó, các chức năng khác của ngoại lệ không được kiểm tra cũng tương tự như chương trình đã đề cập ở trên.

thú vị bài viết...