您的当前位置:首页正文

构造方法

来源:化拓教育网

用于初始化一个对象,让某一个对象的一创建出来就拥有某些属性和值
重写init方法
1.初始化父类,在初始化子类
必须判断父类是否初始化成功,
//问题1:什么是构造方法?
答:在OC中init开头的方法, 我们称之为构造方法

让某一个实例对象在初始化的时候就具有一定属性值
//问题2:构造方法的用途?
答:
让某一个实例对象在初始化的时候就具有一定属性值
构造方法的用途: 用于初始化一个对象, 让某个对象一创建出来就拥有某些属性和值
//问题3:如何实现构造方法?
答:
重写init方法
重写init方法, 在init方法中初始化成员变量
//问题4:如何重写init方法?
答:

- (instancetype)init{
    if[[(self = [super init])
       {
       
       具体要做的操作
       }
       return self;
}

        重写init方法必须按照苹果规定的格式重写, 如果不按照规定会引发一些未知的错误
        
        必须先初始化父类, 再初始化子类
        必须判断父类是否初始化成功, 只有父类初始化成功才能继续初始化子类
        返回当前对象的地址
        - (instancetype)init
    {
        // 1.初始化父类
        // 只要父类初始化成功 , 就会返回对应的地址, 如果初始化失败, 就会返回nil
        // nil == 0 == 假 == 没有初始化成功
        self = [super init];
        // 2.判断父类是否初始化成功
        if (self != nil) {
            // 3.初始化子类
            // 设置属性的值
            _age = 6;
        }
        // 4.返回地址
        return self;
    }
        - (instancetype)init
    {
        // 1.初始化父类
        // 2.判断父类是否初始化成功
        if (self = [super init]) {
            
            // 3.初始化子类
            _age = 6;
        }
        // 4.返回地址
        return self;
    }