Базовый класс Exception является базовым для всех исключений и содержит ряд методов, которые позволяют получить информацию о характере исключения. 35 Например, метод getMessage() возвращает сообщение об исключении, а getStackTrace() — массив, содержащий трассировку стека исключения. 3
Специализированные классы исключений являются производными от базового класса Exception и могут быть предназначены для описания конкретных видов исключений, например, непроверяемых (компилятор не проверяет факт обработки таких исключений) или проверяемых (все остальные классы, образованные от класса Exception). 3
Таким образом, основное отличие в том, что базовый класс Exception является общим для всех исключений, а специализированные классы исключений описывают конкретные типы ошибок и их особенности.