NSException(捕获异常,防止崩溃)

本文是个人学习记录,结尾会附上原文地址

基本用法:

NSString * name=@"异常名称";
NSString * reason=@"出现异常原因";
NSDictionary * infoDic=@{   };
NSException * excetion=[NSException  exceptionWithName: name reason: reason userInfo: infoDic];
int k=1;
if (k>0){
@throw excetion;(抛异常:这行代码会导致崩溃)

}

中级用法:

NSArray * arrat=@[@"hhh",@"kkk"];
@try {
    NSString * str=array[2];//这行代码有问题会崩溃
    NSLog(@"%@",str);
//  这里的代码如果出现异常,会走@cacht 里的代码
}@cacht(NSException * exception){
    NSLog(@"%@", exception.name);//崩溃名称
    NSLog(@"%@", exception.reason);//崩溃原因
    NSLog(@"%@", exception.userInfo);//崩溃信息
// 如果需要抛出异常(让程序崩溃),写上@throw exception
}@finally {
//这里的代码必定会走,可以做相应的操作
NSLog(@"%@",@"上面的数组取值越界了!");
}

未完待续...

原文地址

你可能感兴趣的:(NSException(捕获异常,防止崩溃))