A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© mazhichao 中级黑马   /  2015-7-2 18:49  /  690 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

OC中self和super
        作用:用于在方法定义中引用执行该方法的对象。相当于C++中this
        self用法
        1)在对象方法中使用(调用当前方法的对象)
        @interface car:NSObject//声明一个车类
                -(void)run;                        //定义对象方法run
                -(void)stop;                        //定义对象方法stop
                -(void)run:(car*);
        @end
        @implementation car        //事项汽车类
                -(void)run
                {
                        [self stop];                        //可以使用self
                        NSLog(@“%p”,self);        //打印结果与调用run方法对象的地址一样
                }
                -(void)stop
                {
                        NSLog(@“车停了”);
                }
        @end
        2)在类方法中的使用(self在类方法中使用指代当前的类)
        @interface car:NSObject//声明一个车类
                +(void)run;                        //定义类方法run
                +(void)stop;                        //定义类方法stop
                +(void)run:(car*);
        @end
        @implementation car        //事项汽车类
                +(void)run
                {
                        [self stop];                        //可以使用self
                        NSLog(@“%p”,self);        //打印结果已存在对象的地址不一样与类地址相同
                }
                +(void)stop
                {
                        NSLog(@“车停了”);
                }
        @end
        3)self修饰变量
                若set方法中行参变量名与成员变量名相同,用self访问成员变量

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马