Cómo controlar las excepciones en objective-c en aplicaciones de ios

En Objective-C, las excepciones se ocupan de condiciones inesperadas en su programa. Considere lo siguiente al crear código con el fin de evitar fallos dentro de sus aplicaciones de iOS. Prestar mucha atención a:

Video: Android - Controlar las excepciones no capturadas (Uncaught Exception)

  • Una declaración alloc falla porque el sistema se queda sin memoria.

  • Mal de entrada se mete en su programa que causa (por ejemplo) un error de división por cero.

  • Su programa intenta erróneamente acceder a una matriz con un índice que está fuera de los límites.

Las excepciones se aplican el principio orientada a objetos de separación de las preocupaciones que es la idea de dividir una aplicación en distintos componentes que se superponen en la funcionalidad lo menos posible. El valor de la separación de las preocupaciones es simplificar el desarrollo y mantenimiento de programas de ordenador.

Cuando las preocupaciones están bien separados, las secciones individuales se pueden desarrollar y actualizan independientemente. Excepciones también automatizar la propagación de una condición inesperada hasta el punto donde se maneja. Como resultado, su código no está lleno de declaraciones de manejo de excepciones, lo que hace que su código sea más fácil de escribir y mantener.

Objetivo-C parte C, proporcionando cuatro directivas del compilador para el manejo de excepciones:

Video: Tutorial Java Netbeans #4- Manejo de Excepciones

  • @try define un bloque de control de excepciones (es decir, código que podría lanzar una excepción).

  • @catch () define un bloque de código para el manejo de la excepción lanzada en el bloque @try. El parámetro de @catch es el objeto de excepción thrown- esto es generalmente un objeto NSException.

  • @finally define un bloque de código que se ejecuta si se produce una excepción.

  • @throw produce una excepción - un objeto NSException o, más a menudo, un objeto que pertenece a una subclase de NSException.

El código siguiente muestra cómo se pueden lanzar excepciones, capturados y manipulados dentro de un @ tratar ... @ bloque catch.

@try {printf ("Sé que esto failn") -NSDictionary * emptyDictionary = [[NSDictionary alloc] init] -NSException * anException = [NSException exceptionWithName: @"MiExcepción" razón:@"Apenas para las muecas" userInfo: emptyDictionary] - @ tirar anException -} @ capturas (* NSException excepción) {NSLog (@"Excepción capturada con la razón gt;% @
Artículos Relacionados