Object-c 加号 + 减号 -

加号 是类的方法,可以通过类直接调用(和Java中的static比较类似)。

减号 是对象的方法,通过实例化的对象对减号方法进行调用(类似Java中的普通方法)。

一个例子(减号方法较多可以忽略, 一两个进行对比


#import <Foundation/Foundation.h>
@interface Person : NSObject
{
    int iid;
    int age;
}
-(id)init;
-(id)init:(int)newIid andAge:(int)newAge;

-(void)setIid:(int)newId;
-(int)getAge;

-(void)setAge:(int)NewAge;
-(int)getAge;
+(int)maxAge;
+(id)person;
@end

@implementation Person
-(id)init
{
    return [self init:3 andAge:4];

}
-(id)init:(int)newIid andAge:(int)newAge
{
    self=[super init];
    if(self){
        iid=newIid;
        age=newAge;
    }
    return self;
}

-(void)setIid:(int)newId
{
    iid=newId;
}
-(int)getIid
{
    return iid;
}

-(void)setAge:(int)newAge
{
    age=newAge;
}
-(int)getAge
{
    return age;
}
+(int)maxAge
{
    return 150;
}
+(id)person
{
    return [[[self class] alloc]init ];
}
@end

int main(int arac,const char *arav[])
{
    NSAutoreleasePool *pool=[[NSAutoreleasePool alloc] init];
    Person *person1=[Person person];//[[Person alloc] init];

    NSLog(@"%d,%d",[person1 getIid],[person1 getAge]);
    [pool drain];
    int maxAge=[Person maxAge];
    NSLog(@"%d",maxAge);
    return 0;
}


可看到在调用加号方法时,直接用[类名  方法名]直接调用   

减号方法,先是对象,然后在通过[对象名  方法名]调用

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值