------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------
点语法
1.点语法与setter和getter有关
Person *p = [Person new];
[p setAge : 10]; // 等价于 p.age = 10;
int a = [p age]; // 等价于 int a = p.age;
2.说明:
p.age = 10; 并非访问p对象的成员变量 _age;即使是访问p对象的成员变量_age也应该写成p -> _age;此句正确的含义是调用了p对象的setAge:方法。
3.p.age = 10;与p.age的区别:
如果后面有赋值,即:p.age = 10;就是调用了p对象的setAge:方法;没有赋值,即:p.age;就代表调用了p对象的getAge方法:(int)age;
4.OC中直接访问成员变量的方式只有用箭头 -> ,点语法不代表直接访问对象的成员变量;
5.点语法的真实作用剖析
-
其实点语法就是方法的调用;
-
当使用点语法时,编译器就会自动展开成相应的方法;
6.点语法的使用注意点
点语法使用不当会引发死循环:
时间: 2024-09-30 02:00:12