Problem Statement
In Java, what distinguishes a checked exception from an unchecked exception?
Explanation
In Java checked exceptions inherit from Exception but not RuntimeException. The compiler forces you to either catch them or add throws clause. Unchecked exceptions (RuntimeException) are not required to be declared or caught, giving more flexibility but less compile-time safety.