Object-C 类的点语法

本文是观看了 @M了个J 视频  整理的一些学习资料   在这里感谢大神[(@M了个J) 大神博客链接的地址为  http://www.cnblogs.com/mjios/] 在这里谢谢大神,同时也谢谢那些无私奉献知识的人   如果说我比别人看得更远些,那是因为我站在了巨人的肩上 --牛顿

类的.h中  方法名( :号也是方法名的一部分)

- (void)setAge:(int)newAge; //方法名是setAge:

-(int)age; //方法名是age

-(void)setAge:(int)newAge andNo:(int)no; //方法名是setAge:andNo:


类的创建、点语法的使用

Person * person = [ [Person alloc] init];

person.age = 10; //相当于[person setAge:10]   //当. 在等号的左边时 编译器自动检查调用set方法 编译器默认执行的set方法名为setAge

int age = person.age; //等效于[person age];     //当. 在等号的右边时 编译器自动检查调用get方法  编译器默认执行的get方法名为age

因此person.age访问的是成员变量的set方法并不是该成员变量  所以OC中通常把成员变量声明为_变量名(如_age) 这样我们就可以很清楚的知道person.age 不是访问成员变量  因为我们的成员变量名为_age   

-(void)setAge:(int)newAge{

_age =newAge;

//self.age = newAge; //不可以这样写  死循环  setAge调用setAge  相当于 [self setAge:newAge] 无限调用set方法

}

//get方法  OC中  成员变量的get方法名与成员变量名相同

- (int)age{

NSLog(@"调用了age 方法: %i",age);

return _age;

//return self.age; //不可以这样写  死循环  age调用age  相当于 [self  age] 无限调用get方法

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值