多态

一.定义一个BaseModel的类

在.h文件中

@property(nonatomic,copy)NSString *name;

@property(nonatomic,copy)NSString *sex;


-(id)initWithName:(NSString *)name

              sex:(NSString *)sex;


+(id)BaseModelWithName:(NSString *)name

                   sex:(NSString *)sex;

在.m文件中

-(id)initWithName:(NSString *)name

              sex:(NSString *)sex

{   self=[super init];

    if(self){

        self.name=name;

        self.sex=sex;

    }

    return self;

    }

+(id)BaseModelWithName:(NSString *)name

                   sex:(NSString *)sex{

    //多态的方式完成对象的创建

    id obj=[[[self class] alloc] initWithName:name sex:sex];

    return obj;

}

二.

//再定义一个Person的类继承于BaseModel,然后在主函数中直接可以打印如下

    Person *per=[Person BaseModelWithName:@"孙祥" sex:@""];

    NSLog(@"%@",per.name);


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值