clase 5
TRANSCRIPT
Contenido
• Definiciones:– Excepción– Manejo de Excepciones
• Casos de excepciones• Manejo de Excepciones en C#• Uso de Try – catch - finally en C#– Ejemplo
• Referencias
Excepción
• Una excepción es la indicación de un problema que ocurre durante la ejecución de un programa.
• Ocurre con poca frecuencia.
Manejo de Excepciones
• El manejo de excepciones permite a los programadores crear aplicaciones tolerantes a fallas y robustos (resistentes a errores) para controlar estas excepciones y que pueda seguir ejecutando el programa sin verse afectado por el problema.
Casos de Excepciones
• Desbordamiento aritmético– Fallo informático que se da cuando el código
almacenado en un registro supera su valor máximo.• División entre cero (DivideByZeroException)• FormatException
Manejo de Excepciones en C#
• C# incorpora mecanismos para el tratamiento de las situaciones anómalas, denominadas excepciones, que pueden producirse durante la ejecución de un programa.
Controlar una excepción mediante Try-catch
• El propósito de un bloque try-catch es detectar y controlar una excepción generada por código en funcionamiento.
Fuga de Recursos
• Los programas solicitan y liberan recursos en forma dinámica (en tiempo de ejecución).
• Por ejemplo, para abrir un archivo se debe solicitar el acceso a dicho archivo. Los sistemas operativos evitan que más de un programa manipule un archivo al mismo tiempo. Debido a esto cuando un programa termina de usar un recurso debe de liberarlo para que otros programas puedan accederlo. Si esto no sucede ocurre una fuga de recursos.
El Bloque finally
• Un bloque finally se utiliza principalmente para liberar los recursos solicitados en el bloque try.
• Es un mecanismo efectivo para eliminar fugas de recursos.• El bloque finally se ejecuta sin importar que el bloque try
se ejecute con éxito u ocurra una excepción.• No se puede acceder a las variables locales de un bloque
try en el bloque finally.• Nota: Los recursos deben liberarse tan pronto como ya no
sean necesarios en un programa.
Referencias
• Capitulo 12: Manejo de Excepciones [paginas 385 – 409]Deitel, Harvey M. y Paul J. DeitelCómo programar en C#. Segunda Edición.Pearson Educación, México 2007.
• Manejo de excepcioneshttp://es.wikipedia.org/wiki/Manejo_de_excepciones
• Desbordamiento aritméticohttp://es.wikipedia.org/wiki/Desbordamiento_aritmético
• Instrucciones para el control de excepcioneshttp://msdn.microsoft.com/es-es/library/s7fekhdy%28v=VS.80%29.aspx
• Cómo: Controlar una excepción mediante Try y Catch (Guía de programación de C#)http://msdn.microsoft.com/es-es/library/ms173165%28v=vs.80%29.aspx