黑马程序员——ios学习笔记 OC self&异常
来源:互联网 发布:老年人意外伤害数据 编辑:程序博客网 时间:2024/05/16 14:29
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
1 self与super
① self调用自己方法,super调用父类方法
② self是类,super是预编译指令
③ [self class]和[super class]输出是一样的
//Person.h //person类的申明#import <Foundation/Foundation.h>@interface Person : NSObject{ NSString *name; int age;}-(void)setName:(NSString *)name andAge:(int)age; +(void)showMessage;@end//Person.m //person类的实现#import "Person.h" @implementation Person-(void)setName:(NSString *)name andAge:(int)age{// _name=name; 当实例变量与形参不同是可以直接赋值// _age=age; self.name=name; //当实例变量与形参相同则使用self赋值 self.age=age;} +(void)printInfo{ NSLog(@"Hello,World!");} +(void)showMessage{ [self printInfo]; //使用self调用类方法}@end//main.m //主函数源文件#import <Foundation/Foundation.h>#import "Person.h" int main(int argc, const char * argv[]) { Person *p=[[Person alloc]init]; [p setName:@"Kenshin" andAge:28]; [Person showMessage]; return 0;
2 异常处理
Object-C语言的异常处理符号和C++、JAVA相似。可使用NSException,NSError或者自定义的类。异常处理机制是由这个四个关键字支持的:@try,@catch,@thorw,@finally。
捕获异常:
@try{ }
@catch(NSException*exception){ }
@finally{ }
抛出异常(@throw):
NSException*exception =
[NSException exceptionWithName: @“helloworldException"reason: @”illegal words” userInfo:nil];
@throwexception;
例如:
helloworld *h = [[helloworld alloc] init];@try{[h saysomething];}@catch(NSException*exception){NSLog(@"main: Caught %@: %@", [exceptionname], [exceptionreason]);}@finally{[h release];}
总结:
self在对象中指代的是对象本身,self在类中指代的是类本身。故一个类中拥有同名的对象方法与类方法也不会调用出错。
异常处理用于设置可能出错的代码段,进行异常捕捉,便于代码的调试与修改。
0 0
- 黑马程序员——ios学习笔记 OC self&异常
- 黑马程序员——ios学习笔记 OC 初步认识
- 黑马程序员——ios学习笔记 OC 类
- 黑马程序员——ios学习笔记 OC 继承
- 黑马程序员——ios学习笔记 OC 封装&多态
- 黑马程序员——ios学习笔记 OC 内存管理
- 黑马程序员——ios学习笔记 OC 协议&Block
- 黑马程序员——ios学习笔记 OC 分类
- 黑马程序员-ios学习笔记:self,super
- 黑马程序员:OC学习日记之self
- 黑马程序员——OC学习笔记01 OC基础知识。
- 黑马程序员—IOS基础之OC—static、self、NSString和NSLog讲解
- 黑马程序员——异常学习笔记
- 黑马程序员——OC学习——self和super关键字
- 黑马程序员—OC—类方法 && self
- 黑马程序员——oc之self的使用
- 黑马程序员——OC之self关键字、多态
- 黑马程序员——ios学习笔记 OC Foundation—NSString
- burp suite使用(一) --- 抓包,截包,改包
- 1.Linux下libevent和memcached安装
- Leetcode# 101 Symmetric Tree
- hdu 2102
- OCUI界面设计:程序基本结构
- 黑马程序员——ios学习笔记 OC self&异常
- 利用外网主机穿透本地网络防火墙
- 桶排序
- Windows Sockets 网络编程——第四章 网络应用程序工作机制
- Hibernate工作原理及为什么要用?
- Codeforces Round #313 Gerald is into Art (枚举)
- B1010一元多项式求导 (25)
- JQuery获取复选框checkbox的值
- linux给命令取别名和为某些操作设置快捷键