黑马程序员技术交流社区

标题: self 小结 [打印本页]

作者: hejianchun    时间: 2015-9-23 16:00
标题: self 小结
                                                                                                                                                self 谁调用当前方法,self就代表谁self在对象方法中,self代表当前对象self在类方法中个,self代表类
                                        [self 方法名称]; 调用其它方法(类方法/对象方法)self可以简单理解为指自己

                                                                                                同时有对象方法和类方法存在的时候,self不会调错

                                                                                                self在对象方法中 可以利用self->属性名称的方式访问成员变量
应用场景:当存在局部变量名和成员变量名同名的时候
还有一点就是在OC中点语法里说明了一下 self的使用注意:

                                                                                                1)OC中有个self关键字,作用跟this关键字类似。我这么说完,可能有人就会想这样写OCset方法了
                                        - (void)setAge:(int)newAge {
                                        self.age = newAge;}
                                        这绝对是错误的,会造成死循环。因为我在前面已经说过了,OC点语法的本质是方法调用,所以上面的代码相当于
                                        - (void)setAge:(int)newAge {
                                        [self setAge:newAge];}
                                        下面的使用方式也是一个死循环:2)在get方法中,return self.age;相当于是[self age];
                               
                       
               
                               
                       
               


                               
                       
               
                               
                       
               






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2