1. Introducción
    1. Si algo puede ir mal en un programa, podemos apostar a que irá mal. Murphy.
    2. Evento que ocurre dentro de la ejecución de un programa
    3. Interrumpe el flujo normal de ejecución
    4. Separa el flujo normal del programa del tratamiento de excepciones
    5. Propagación de excepciones
  2. Uso de excepciones
    1. try
      1. Bloque de código que requiere tratamiento de excepciones
    2. catch
      1. Tratamiento de la excepción
      2. Excepciones específicas a genéricas
    3. finally
      1. Se ejecuta siempre
      2. Sea flujo normal o una excepción
    4. Propagación
      1. throw
      2. throws
  3. Jerarquía
    1. Jerarquía de herencia
  4. Tipos
    1. Checked
      1. Errores recuperables
      2. Heredan de Exception
      3. El compilador te obliga a tratarlas
      4. Bloque try-catch o throws
    2. Unchecked
      1. Errores no recuperables
      2. Heredan de RuntimeException
      3. El compilador no te obliga a tratarlas
  5. Buenas prácticas
    1. Cerrar los recursos, uso de finally
    2. No usar excepciones en control de flujo
    3. No suprimir ni ignorar excepciones
    4. No atrapar excepciones generales
    5. Loggear las excepciones solo una vez
  6. Acerca de
    1. Topic
    2. Topic