首页 > 其他 > 详细

self关键字的使用

时间:2015-05-12 13:27:42      阅读:256      评论:0      收藏:0      [点我收藏+]
#import <Foundation/Foundation.h>

@interface Student : NSObject
{
    int _age;
    char *_name;
}
- (void) study;
- (void) run;

+ (void) play;
+ (void) run;
@end

@implementation Student
- (void) study
{
      NSLog(@"%s在学习",self->_name);
      [self  run];
     //若在此调用类方法会报错的,因为该self是对象,不能调用类方法
}
- (void) run
{
    NSLog(@"今天有一个学生在跑步");
}

+ (void) play
{
    NSLog(@"上体育课啦");
   [self run];
   //若在此调用对象方法会报错的,因为该self是指向类,不能调用对象方
}
+ (void) run
{
    NSLog(@"开始跑步!");
}
@end

int main()
{
    [Student  play];
   // 结果:上体育课啦
   //       开始跑步!
  Student *stu=[Student new];
  stu->name="aa";
  [stu study];
  //结果:aa在学习
  //     今天有一个学生在跑步
}

 

1.谁调用了self当前所在的方法,self就指向谁(self相当于一个指针)

   当self所在方法是被对象调用,那么self就指向了调用的那个对象

   当self所在的方法是由类调用,那么self就是指向该类

2.在对象方法中可以使用 self -> 成员变量名  访问类对象中的成员变量

3.也可以用self调用类方法/对象方法  :[self 方法名](在定义的类中使用)

self关键字的使用

原文:http://www.cnblogs.com/hui1107464497/p/4496759.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!