• init 的父类 和 子类的初始化


     设置可变传参的初始化方法

             -(instancetype) initwithHour :(int)h  and Minute :(int)m and second :(int) s;

            然后在实现部分

             -(instancetype) initwithHour :(int)h  and Minute :(int)m and second :(int) s;

            {

                self=[super init];

                if (self !=nil ) {

                     Hour=h;

                    Minute=m;

                    Second=s;

                }

            }

        然后下方主函数 main 里面进行直接赋值

            Time*tm2=[[Time alloc ]initwithHour :13  and Minute :30  and second :0 ];

            后台直接显示13:30:00

            

            

            

             重写 init  只需要在实现部分直接写 不需要在声明的.h文件重新声明

            init是 NSObject 的一个方法

            对于继承 于 NSObject 的类

            在为内存开辟空间的时候 只是初始化父类的元素 子类的元素需要重新初始化 初始化如下

            先初始化父类的部分

            self=[ super init ];

            //然后初始化自己的部分 先判断self 是否为nil nil 说明 父类初始化失败

            

            -(id) init  //id 是指向任意“对象”的类型  也可以填写instancetype 他只用在初始化里面进行

            {

                if (self=[super init]) {//super 是初始化父类的部分 如果父类初始化失败 那么self 是nil   self只是代表当前对象的一个指针 

                    {

                        m_M=10;

                        m_s=10;

                        m_H=20;

                    }

                    return  self;

                }

            

            }

        }

    }

  • 相关阅读:
    [探索][管理]《现在,发现你的优势》
    【成功智慧】010.依靠忍耐度过困难时期
    爱情五十九课,就差一句话
    VSS2005 托管 VS2010代码
    一个网站的金字塔战略
    【成功智慧】013.脚踏实地的去做,没有完不成的任务
    MU.Bread 麦卡优娜
    【成功智慧】012.要有耐心去等待成功的到来
    【成功智慧】009.要能够承受所发生的事情
    【成功智慧】014.一日复一日的度过难关
  • 原文地址:https://www.cnblogs.com/xzz5211314/p/5138363.html
Copyright © 2020-2023  润新知