Исключения могут быть проверяемыми (один тип) и не проверяемыми (другой тип) именно проверяемые исключения в случае отсутствия обработки в методе потенциальной их генерации надо указывать в throws