- ObjC对C语言的扩展
@
- 引用头文件
#import <Foundation/Foundation.h>
- 打印日志
NSLog();
- 类声明(一般写在.h文件中)
@interface XXX : YYY
@end
- 根类/祖先类
NSObject
- 属性
@property
- 只读:readonly
- 弱引用:weak
- 拷贝属性:copy
- 实例方法
-(返回类型)方法名;
-(返回类型)方法名:(类型1)内参1 参数2:(类型2)内参2; //方法名应包含参数1
- 类方法
+(返回类型)方法名;
- 类实现(一般写在.m文件中)
#import "XXX.h"
@implementation XXX
@end
- 当前实例
self
- 父类
super
- 对象初始化器(可重写,可不唯一)
-(id)init {
self = [super init]; //先调用父类初始化器
if(self) {
... //初始化当前类的实例变量
}
return self;
}
+(void)initialize {
//自动调用父类初始化器,不需要手动调用
if(self == [类名 class]) {
...
}
}
- 析构器(唯一)
dealloc //调用结束时自动调用父类析构器
- 实例对象内存分配&初始化(默认初始化0)
类* 对象 = [[类 alloc]init];
类* 对象 = [类 new]; //调用缺省初始化器
/* 实例对象必须以指针形式存在 */
- 方法调用
[对象 实例方法];
[类 类方法];