标签:
一、点语法本质
1 //方法调用 2 Student *stu = [[Student alloc] init]; 3 [stu setAge:10]; 4 int age = [stu age]; 5 //-----------------------------我是华丽分割线----------------------------- 6 //点语法 7 stu.age = 10; 8 int age = stu.age;
二、成员变量的作用域
三、@property 和 @synthesize 、setter 和 getter 及使用细节
1 //--[interface.h]---Xcode4.2之前的语法---------------我是华丽分割线-------- 2 @property int age; //@property 3 //--[interface.h]--------??等价于??-------- 4 - (void)setAge; 5 - (int)age; 6 7 //--[implementation.m]-------------------------------我是华丽分割线-------- 8 @synthesize int age = _age; //@synthesize 9 //--[implementation.m]---??等价于??-------- 10 - (void)setAge { 11 _age = age; 12 } 13 - (int)age { 14 return _age; 15 } 16 //--[implementation.m]-------------------------------我是华丽分割线-------- 17 @synthesize int age; //@synthesize 18 //--[implementation.m]---??等价于??-------- 19 - (void)setAge { 20 _age = age; 21 } 22 - (int)age { 23 return age; 24 } 25 26 //--[interface.h]---Xcode4.4之后有了以下新语法-------我是华丽分割线------- 27 @property int age; //@property 28 //--[interface.h]---------??等价于??------- 29 @interface Student:NSObject{ 30 int _age; 31 } 32 - (void)setAge; 33 - (int)age; 34 //--[implementation.m]--------------------- 35 - (void)setAge { 36 _age = age; 37 } 38 - (int)age { 39 return _age; 40 }
四、id
1 typedef struct objc_object { 2 Class isa; //每个对象都有一个isa,且isa始终指向当前类本身 3 } *id; // id 定义为一个结构指针
五、构造方法(基本概念、重写 init 方法、init 方法的执行过程、自定义)
1 //----Student.m------------- 2 - (id)init { 3 if (self = [super init]) //调用回super的init方法,返回对象self,即isa为Student对象 4 { //初始化成功 5 _age = 10; 6 } 7 return self; 8 }
1 //------NSObject------------ 2 - (id)init { 3 isa = [self class]; 4 return slef; 5 }
六、更改 Xcode 模版(main.m 、注释)
七、分类(基本使用、使用注意、给 NSString 增加类方法及扩充对象方法)
八、作业点评
九、类的深入研究(本质、类对象的使用、类的加载和初始化)
十、description 方法
十一、NSLog 输出补充
十二、SEL (基本用法及其他使用)
标签:
原文地址:http://www.cnblogs.com/jackieyi/p/4675145.html