self

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------



  self 关键字

/*

 self 是指针: 指向了方法调用者,代表着当前对象(方法调用者)

 谁调用了当前方法, self代表谁

 * self出现在对象方法中,self就代表对象

 * self出现在类方法中,self就代表类

 

 1> 可以利用 self ->成员变量名访问当前对象内部的成员变量

 2> [self 方法名];可以调用其他方法/类方法

 

 //

 */

#import <Foundation/Foundation.h>


@interface Person : NSObject

{

    float _weight;

    

}

-(void)eat;

-(void)run;

+(void)test;

+(void)eat;


@end


@implementation Person

-(void)eat{

    

    _weight += 100;   //

    NSLog(@"人在吃东西,weight:%.2f",_weight);

    

    [self run];

}

-(void)run{

    

    _weight -=10;

    NSLog(@"人在疯跑,weight:%.2f",_weight);

    

}


+(void)test{

    

    // self 在类方法中的使用    self ----->Person

    

    NSLog(@"+test  ---->self:%@",self);

    

    [self eat];   //调用的时 eat的类方法

}


+(void)eat{

    

    NSLog(@"+eat");

}

@end


int main(int argc, const char * argv[]) {

    @autoreleasepool {

        // insert code here...

        Person *p = [Person new];

        [p eat];

        [Person test];

    }

    return 0;

}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值