您的位置:首页 > 移动开发 > Objective-C

objective-c语法学习:异常处理

2013-02-02 23:11 489 查看
OC类中的一些方法

-(BOOL)isKindOfClass:(Class)aClass;  //对象是不是aClass这个类或者是子类的成员

-(BOOL)isMemberOfClass:(Class)aClass;  //对象是不是aClass这个成员

-(BOOL)isSubclassOfClass:(Class)aClass;  //对象是不是aClass的子类

-(BOOL)respondsToSelector:(SEL)aSelector;  //对象是否能相应aSelector指定的方法

-(BOOL)performSelector:(SEL)aSelector;  //对象调用aSelector指定的方法

-(BOOL)performSelector:(SEL)aSelector;  //对象调用aSelector指定的方法,传递参数object

        withObject:(id)object;

-(BOOL)performSelector:(SEL)aSelector;  //对象调用aSelector指定的方法,传递参数object1和object2

        withObject:(id)object;

        withObject:(id)object;

if([audi isKindOfClass:[Car class]]) {

    NSLog(@"audi is a kind of Car");

}

//判断对象audi是不是Car这个类或它的成员

if([car respondsToSelector:@selecotr(run)]) {

    NSLog(@"car responds to run method");

}

//判断car对象是否响应@selector指定的方法

SEL action;

action = @selector(run);

[car performSelector:action];

等同于

[car performSelector:@selector(run)];

if([Audi class] == [Benz class])//判断这两个类是不是同一个类

oc的异常处理

好的编程时能预测程序运行过程中可能出现的问题

使用@try处理异常

@try...

@catch..

@finally..

//oc中的异常处理

@try {

    [car noSuchMethod];

}

@catch (NSException *exception) {

    NSLog(@"catch exception %@ %@", [exception name], [exception reason]);

    //...编写代码,记录这个日志

}

@finally {

    //code

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: