黑马程序员:OC学习日记之self

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

self的用途:
 1> 谁调用了当前方法,self就代表谁
self出现在对象方法中,self就代表对象
  self出现在类方法中,self就代表类
 2> 在对象方法利用"self->成员变量名"访问当前对象内部的成员变量
    [self 方法名]可以调用其他对象方法\类方法
学习感言:类似于C++中的this用法。地址这个概念是不变的,因为有对象概念,所以有了指向对象的指针。

self经典用法剖析:

#import <Foundation/Foundation.h>
@interface Person : NSObject
{
    int _age;
}
- (void)test1;
- (void)test2;
+ (void)test2;

+ (void)test3;
+ (void)test4;
- (void)test4;
@end

@implementation Person
- (void)test1
{
    _age = 20;
    
    int _age = 10;
    NSLog(@"调用了-test1方法-%d", _age);
    [self test2];
}

- (void)test2
{
    int _age = 10;
    NSLog(@"调用了-test2方法-%d", self->_age);
}

+ (void)test2
{
    int _age = 20;
    NSLog(@"调用了+test2方法-%d", _age);
}

+ (void)test3
{
    NSLog(@"调用了+test3方法");
    [self test4];
}

+ (void)test4
{
    NSLog(@"调用了+test4方法");
}

- (void)test4
{
    NSLog(@"调用了-test4方法");
}
@end

int main()
{
    [Person test3];
    
    Person *p = [Person new];
    [p test1];
    return 0;
}
相信大家看过就会明白的,是的,OC就是如此之简单, fighting!
加油!!!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值