Try-Catch Block
The try-catch block is the most common way to handle exceptions:
public class ExceptionHandlingExample {
public static void main(String[] args) {
try {
int result = divide(10, 0);
System.out.println("Result: " + result);
} catch (ArithmeticException e) {
System.out.println("Error: " + e.getMessage());
} finally {
System.out.println("This block always executes");
}
}
public static int divide(int a, int b) {
return a / b;
}
}
Custom Exceptions
You can create your own exceptions to handle specific scenarios in your application:
class InsufficientFundsException extends Exception {
public InsufficientFundsException(String message) {
super(message);
}
}
class BankAccount {
private double balance;
public void withdraw(double amount) throws InsufficientFundsException {
if (amount > balance) {
throw new InsufficientFundsException("Not enough balance");
}
balance -= amount;
}
}
public class CustomExceptionExample {
public static void main(String[] args) {
BankAccount account = new BankAccount();
try {
account.withdraw(100);
} catch (InsufficientFundsException e) {
System.out.println("Error: " + e.getMessage());
}
}
}