Checked exception conditions are detected at compile time and the programmer is forced to handle or throw them. Unchecked exception conditions are not detected.