目录
- 源文件对比
- 关键字对比
- 数据类型对比
- 流程控制语句对比
- 函数(方法)定义和声明对比
- 面相对象新增特性
- 面向对象新增语法
- 新增异常处理
1.源文件对比
- C语言中常见源文件.h头文件,.c文件
文件扩展名 | 源类型 |
---|---|
.h | 头文件,用于存放函数声明 |
.c | C语言源文件,用于实现头文件中声明的方法 |
- OC中的源文件.h头文件,.m与.mm的实现文件
文件扩展名 | 源类型 |
---|---|
.h | 头文件,头文件包含类、方法、属性的声明。 |
.m/.mm | 类的实现文件,参与编译的文件,用来实现类中声明的方法 |
2.关键字对比
- C语言的关键字都可以在OC源程序中使用
- OC新增的关键字在使用时,注意部分关键字以"@"开头
3.数据类型对比
- C语言数据类型
7.面向对象新增语法
- 属性生成器
- @property
- @synthesize
//声明属性
@property (nonatomic,strong)NSString * name;
//合成属性
@synthesize name = _name;
- 分类
- 分类与继承
- 使用分类扩展类,无需子类化
@interface NSString (MyNSString)
- (NSString *) encryptWithMD5;
@end
- 协议
- 使用协议声明方法
- 协议类似于C#,java中的接口
@protocol MyProtocol
- (void)myProtocolMethod;
@end
- Fundation框架
- 创建和管理集合,如数组和字典
- 访问存储在应用中的图像和其他资源
- 创建和管理字符串
- 发布和观察通知
- 创建日期和时间对象
- 操控URL流
- 异步执行代码
8.新增异常处理
-
用于处理错误信息
-
格式:
- @try .... @catch .... @finally
-
示例
//创建对象car
Car *car = [Car new];
@try {
//调用一个没有实现的方法
[car test];
}@catch (NSException *exception) {
NSLog(@"%@",exception.name);
}@finally {
NSLog(@"继续执行!\n");
}
网友评论