Objective-C中的异常
来源:互联网 发布:尤克里里入门软件 编辑:程序博客网 时间:2024/05/01 18:25
常见异常捕获方法
方法说明-(BOOL)isKindOfClass:(Class)aClass判断一个对象是不是指定类或者指定类的子类的实例-(BOOL)isMemberOfClass:(Class)aClass判断一个对象是不是指定类的实例+(BOOL)isSubclassOfClass:(Class)aClass判断某个类是不是指定类的子类+(BOOL)instancesResponfToSelector:(SEL)aSelector判断某个对象是否响应指定方法(向类发送消息)-(BOOL)responfToSelector:(SEL)aSelector判断某个对象是否响应指定方法(向实例发送消息)-(id)performSelector:(SEL)aSelector调用某个方法,在运行阶段才可以发现错误(与直接调用的区别)异常捕获的一边格式:
- @try {
- <#statements#>
- }
- @catch (NSException *exception) { // @catch捕获@try()代码块中抛出的异常
- <#handler#>
- }
- @finally {
- <#statements#> //无论是否存在异常,最好在此做些必要的处理
- }
例:
#import <Foundation/Foundation.h>int main(int argc, const char * argv[]){ @autoreleasepool { NSException* pE=[[NSException alloc]init]; //自定义异常 pE=[NSException exceptionWithName:@"出错了" reason:@"被除数不能为0" userInfo:nil]; int nNum1=81;//初始化除数 int nNum2=0;//初始化被除数 int nResult=0; @try { //如果nNum2=0(即被除数为0)抛出异常 if (nNum2==0) { @throw pE; } else { //如果被除数不为0,则执行以下语句 nResult=nNum1/nNum2; NSLog(@"nResult=%i",nResult); } } @catch (NSException *exception) {//抛出异常 NSLog(@"%@ %@",[exception name],[exception reason]); } @finally { NSLog(@"捕获结束"); } } return 0;}
结果:
出错了 被除数不能为0
捕获结束
- Objective-C中的异常
- objective-c中的异常处理
- Objective-c异常处理
- objective-c 异常处理
- Objective-C - 异常处理(Exception)
- Objective-C - 异常处理(Exception)
- Objective-C - 异常处理(Exception)
- 浅谈Objective-C异常处理
- Objective-C - 异常处理(NSException)
- Objective-C中异常处理
- objective-c中的NSBundle
- Objective-C 中的BOOL
- Objective-c中的委托
- Objective-C中的数据类型
- Objective-C中的委托
- Objective-C中的SEL
- Objective-C中的锁
- Objective-c中的 Protocol
- 浙江大学PAT上机题解析之1001.害死人不偿命的(3n+1)猜想 (15)
- BufferedInputStream原理
- clueTip的应用
- ubuntu opengl 开发
- java读取properties文档
- Objective-C中的异常
- 论坛中偶遇对udp的讨论贴,感觉很好,保持地址
- Wikioi 天梯 排序(1076)
- 【树形DP】 POJ 3345 Bribing FIPA
- 循环拼装String字符串去掉最后一个字符的方法
- linux 通信
- Centos http 防火墙设置
- Git--用git建立code库
- 一步一步学android之基本控件——ImageView和ImageButton组件