1、面向对象概述
比较项目 OC
基类 NSObject
单继承 是单继承
接口 支持接口(协议)@protocol
多继承 使用接口来实现多继承
多态 支持多态
抽象类 支持抽象类
异常处理 简单的异常处理@try @catch @finally
虚函数 所有的函数都是虚函数
头文件 #import
2、OC有别于C/C++的一些比较
1、BOOL YES NO
在oc中布尔类型是BOOL,布尔值是yes,no
2、id类型
O-C中每个目标都可以表达为id类型,可以认为是NSObject*或者是void*
3、nil
nil表示null,表示一个目标指针
3、类声明放到.h文件里,类的实现放到.m文件里。
类的声明:@interface @end
类的实现:@implementation @end
4、#import "xxxx.h"包含头文件
5、创建/销毁OC对象
创建对象
Dog *dog=[Dog alloc];
初始化构造函数
[dog init];
销毁对象
[dog release];
6、字段定义
变量申明:@public @protected @private
O-C中变量必须定义在类{}之间的地方
O-C缺省是@protected
O-C里面的函数全是@public类型 没有其他的类型(用另外的方式实现private化)
7、类的申明
O-C中类的申明必须带*号,这里的*既表示指针也表示引用,例如:Dog *mydog;这里的*既表示真正的指针,也表示引用,可以通过mydog→dog或者mydog.dog这些方法来访问。
8、函数调用对别
9、函数重载
O-C不是严格类型的函数重载
就是说O-C的函数重载前提是方法名相同,如果想重载必须有不同的标签
10、Message消息机制
O-C用[object message]或者object.message来发送消息,所谓的消息就是我们在C语言当中所说的函数。
11、函数作用域的申明
oc在.h头文件定义的所有函数都是public类型,如果想进行私有化可以有2种方法
1、直接将函数写在.m文件中;
2、OC通过Categories来实现函数的 私有化;