Code
import java.io.*;public class ExceptionHandling { // Basic try-catch public static void basicTryCatch() { try { int result = 10 / 0; } catch (ArithmeticException e) { System.out.println("Division by zero: " + e.getMessage()); } } // Multiple catch blocks public static void multipleCatch() { try { // Some code } catch (NullPointerException e) { System.out.println("Null pointer: " + e.getMessage()); } catch (IllegalArgumentException e) { System.out.println("Illegal argument: " + e.getMessage()); } catch (Exception e) { System.out.println("General exception: " + e.getMessage()); } } // Try-catch-finally public static void tryFinally() { try { // Code that might throw exception } catch (Exception e) { // Handle exception } finally { // Always executed System.out.println("Cleanup code"); } } // Try-with-resources public static void tryWithResources() throws IOException { try (BufferedReader reader = new BufferedReader(new FileReader("file.txt"))) { String line = reader.readLine(); // Resource automatically closed } } // Custom exception public static class CustomException extends Exception { public CustomException(String message) { super(message); } } // Throwing exceptions public static void throwException() throws CustomException { throw new CustomException("Something went wrong"); } // Exception propagation public static void propagateException() throws IOException { // Method declares it may throw IOException }}// Basic exception handlingtry { int[] numbers = {1, 2, 3}; int value = numbers[5]; // ArrayIndexOutOfBoundsException} catch (ArrayIndexOutOfBoundsException e) { System.out.println("Index out of bounds: " + e.getMessage());}// Handling multiple exceptionstry { String str = null; int length = str.length(); // NullPointerException} catch (NullPointerException e) { System.out.println("Null pointer exception");} catch (Exception e) { System.out.println("General exception: " + e.getMessage());}// Finally blocktry { // Risky operation} catch (Exception e) { // Handle exception} finally { // Always executed for cleanup System.out.println("Cleanup");}// Try-with-resources (auto-closes)try (FileInputStream fis = new FileInputStream("file.txt")) { // Read from file} catch (IOException e) { System.out.println("IO error: " + e.getMessage());}// FileInputStream automatically closed// Catching and rethrowingtry { riskyOperation();} catch (Exception e) { System.err.println("Error occurred: " + e.getMessage()); throw new RuntimeException("Wrapped exception", e);}// Checked exception handlingpublic void readFile() { try { FileReader reader = new FileReader("file.txt"); // Use reader } catch (FileNotFoundException e) { System.out.println("File not found: " + e.getMessage()); } catch (IOException e) { System.out.println("IO error: " + e.getMessage()); }}
Comments
No comments yet. Be the first!
Please login to leave a comment.