構造方法重寫

類的設計與實現
構造方法
1.init 與 super

init:構造方法 作用是在創建一個對象后,對對象進行初始化操作
以init開頭的所有方法(系統提供的,自定義的)都稱為構造方法
super 相當于子類中對父類的一個索引,通過索引,可以將子類中包含父類的部分,讓父類去進行初始化
instancetype 相當于id 都是泛型 可以指向任意類的對象 編譯時 編譯器不對指向的對象做任何檢查 只有代碼運行的時候 才會直接給對象發送消息
【注】泛型指針存在一定風險 如果指向的對象不存在該消息 程序直接崩潰
//自定義構造方法的好處
1>可以在對象初始化的時候直接對屬性賦值 代碼代碼更加簡潔
2>從代碼封裝的角度來看,代碼的封裝性更強,更符合編程思維 對對象的操作可以直接在類的內部進行 而不需要在類之外的其他地方進行
重寫構造方法

  • (Road *)initWithLength:(int)length{
    self = [super init];
    //self 代表當前調用該方法的對象 super 相當于一個索引
    保證子類中包含父類的部分可以通過父類也進行初始化,最終達到所有的部分完全進行了初始化
    if (self) {
    _length = length;
    }
    return self;
    }
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容