Ans. Checked exceptions are exceptions that the Java compiler requires the programmer to handle explicitly in the code. They are checked at compile-time and must be either caught and handled using a try-catch block or declared in the method signature using the `throws` keyword. Unchecked exceptions, on the other hand, are exceptions that do not need to be caught or declared. They are typically caused by programming errors or unforeseen runtime conditions.