首页 > 编程语言 > 详细

黑马程序员——OC语言 核心语法(2)

时间:2015-03-23 15:52:15      阅读:282      评论:0      收藏:0      [点我收藏+]

                     Java培训、Android培训、iOS培训、.Net培训、期待与您交流!                                                     

                                                          (以下内容是对黑马苹果入学视频的个人知识点总结)

(一)id

1)简介:万能指针,能指向任何OC对象,相当于NSObject *

id类型的定义

typedef struct objc_object {

    Class isa;

} *id;

2)使用注意

// 注意:id后面不要加上*

id p = [Person new];

3)局限性

调用一个不存在的方法,编译器会马上报错

 1 int main(int argc, const char * argv[])
 2 {
 3     Person *p = [Person new];
 4     
 5     // 点语法的本质还是方法调用
 6     p.age = 10; // [p setAge:10];
 7     
 8     int a = p.age; // [p age];
 9     
10     p.name = @"Jack";
11     
12     NSString *s = p.name;
13     
14     NSLog(@"%@", s);
15     
16     return 0;
17 }

(二)构造方法

 1)new的拆分两部曲

 首先分配内存(alloc)再初始化(init)

1 Person *p = [[Person alloc] init];

2)  init方法的重写

想在对象创建完毕后,成员变量马上就有一些默认的值,就可以将init方法的重写

1 - (id)init
2 {
3     if (self = [super init])
4     {
5         _age = 10;
6     }
7     return self;
8 }

3)自定义构造方法

 构造方法的一些规范

①返回值是id类型

②方法名都以init开头

1 - (id)initWithAge:(int)age {
2     if (self = [super init]) {
3         _age = age;
4     }
5     return self;
6 }

传递多个参数进行初始化

1 - (id) initWithAge:(int)age andNo:(int)no;

 

黑马程序员——OC语言 核心语法(2)

原文:http://www.cnblogs.com/lijifeng/p/4359944.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!