美文网首页
自定义构造方法

自定义构造方法

作者: MarkTang | 来源:发表于2016-01-09 00:48 被阅读84次
     自定义构造方法:
     其实就是自定义一个init方法
     1.一定是对象方法
     2.一定返回id/instancetype
     3.方法名称一定以init开头
    // 一个类可以有0个或者多个自定义构造方法
    - (instancetype)initWithName:(NSString *)name;
    
    // 自定义构造方法可以有1个或多个参数
    - (instancetype)initWithAge:(int)age andName:(NSString *)name;
    自定义构造方法在继承中的实现
    
    @implementation Person
    - (instancetype)initWithAge:(int)age andName:(NSString *)name
    {
        if (self = [super init]) {
            _age = age;
            _name = name;
        }
        return self;
    }
    @end
    @implementation Student
    
    - (instancetype)initWithAge:(int)age andName:(NSString *)name andNo:(int)no
    {
        /*
         if (self = [super init]) {
         // _age = age;
         // 狗拿耗子, 多管闲事
         // 自己的事情自己做
         [self setAge:age];
         [self setName:name];
         }
         */
        if (self = [super initWithAge:age andName:name]) {
            _no = no;
        }
        return self;
    }
    @end
    

    相关文章

      网友评论

          本文标题:自定义构造方法

          本文链接:https://www.haomeiwen.com/subject/hmxqkttx.html