Las excepciones son condiciones de error que interrumpen el flujo de un programa. Pueden lanzarse explícitamente con throw o implícitamente por errores. Se manejan con bloques try-catch, donde try contiene el código que puede fallar y catch captura la excepción. Finalmente siempre se ejecuta aunque haya excepción. Existen jerarquías de clases de excepciones como Throwable y Exception.