您的位置:首页 > 其它

OC视频笔记13(点语法的调用,给属性赋值时属性与参数名子相同的结果)14(练习)

2015-05-28 19:04 330 查看


笔记13:


注意:OC里面的点语法只能调用set和get方法

首先要有设置器和***:setAge age

实例对象: person

person.22; 等效于 [person setAge22];

NSInteger age = person.22; 等效于 NSInteger age = [person setAge 22];

NSInteger getage = person.age; 等效于 NSInteger age = [person age];

有时候会调用到除set和get方法外的方法,是因为有的时候被调用的方法跟get方法的规则相同:方法没有参数,同时方法有返回值。同理,规则跟set方法一样的也可以实现。

给属性赋值时属性与参数名子相同的结果:

属性:age(如果我们不用_age表示,而用age表示)

set方法:

-(void)setAge:(NSInteger)age{

age = age;

}

由于OC里面的对象是向上就近搜索的,所以标有颜色的两个age表示同意对象,所以就没有办法通过设置器方法给age赋值

-(void)setAge:(NSInteger)age{

self.age= age;

}

要是用self.age方法来表示类的属性age的话,self.age等价于[self setAge],非但没实现设置器想要完成的设置属性值的要求,反而实现了递归(出现死循环)。
所以我们定义属性的时候都加下划线。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐