美文网首页
OC中的点语法

OC中的点语法

作者: cmhfx1 | 来源:发表于2017-06-12 15:17 被阅读0次

    前面说过了属性,而说了属性就不得不提到,点语法

    在类内定义一个实例变量

    {

    NSInteger _age;

    }

    类外,这样调用:person.age = 10;

    编译报错:Propert 'age' not found on object of type 'person *'

    如果我们添加方法 :

    - (void)setAge:(NSInteger)age;     编译便不会报错

    类外我们继续调用:NSLog(@"age = %ld",person.age);

    编译报错:Propert 'age' not found on object of type 'person *’

    添加方法  - (NSInteger)age; 编译便不会报错

    当编译遇到点语法时,编译器就会将点语法转为对应的setter和getter方法

    在setter或者getter方法中使用点语法

    - (void)setAge:(NSInteger)age

    {

    self.age = age;  //等价于  [self setAge:age];  进入死循环

    }

    在get方法中,return self.age;相当于是[self age];

    相关文章

      网友评论

          本文标题:OC中的点语法

          本文链接:https://www.haomeiwen.com/subject/bumlqxtx.html