点语法的本质是对set和get方法的调用:
1
2
|
Person *p = [Person
new
];
p.age = 10;
|
上面p.age = 10不是给Person的成员变量age赋值,而是调用Person中的setAge方法,并传递参数10,所以p.age = 10就相当于[p setAge:10],当然也可以根据调用Person中的get方法,比如Person中有个get方法名为age,则调用该方法可以用点语法写为p.age,相当于[p age]
【备注】在OC中,比如age的set方法一般写成- (void) setAge (int)newage;get方法一般写成- (void) age;