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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© macau 中级黑马   /  2015-1-20 17:08  /  929 人查看  /  1 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

self关键字

                 1>   使用场合:  适合于OC中所有的方法(对象方法\类方法),不能出现于函数中。

                  2>  作用:可使用 “ self—>成员变量名 ” 使用当前方法调用的成员变量。

                               使用“  [ self   方法名 ] ” 来调用方法(对象方法\类方法)。

                    3>   当成员变量和局部变量重名时,采取就近原则,访问的是当前的局部变量。

                             访问成员变量时,  注意区分同名的局部变量。

程序示例:

                     #import <Foundation/Foundation.h>


                @interface   Dog : NSObject

                 - ( void ) run ;     //   定义对象方法:跑

                 -  ( void )bark ;   //   定义对象方法 :叫

                 @end



                 @implementation   Dog


                 - ( void ) bark

                 {

        NSLog( @ " 狗叫起来了 " ) ;

                  }


                 -  ( void ) run

                  {

                          [ self  bark ]  ;    //     self这时会访问当前对象的方法


                           NSLog (@ " 狗跑远了 " ) ;

                    }

                    @end


                  int   main( )

                  {

        Dog   *p = [ Dog   new ] ;


                        [ p     run]  ;   //   执行到这一步指针先访问对象的run方法,再在run里面访问bark  输出为:狗叫起来了

                                                                                                                                                                                              狗跑远了

                        return  0  ;


                      }




1 个回复

倒序浏览
收藏了、、、、、、、
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马