指定建構函式和遍歷建構函式(對號官網)
1、概念
(1) 指定:標配,至少乙個,初始化所有屬性2、語法結構思考:怎麼判斷是不是指定函式?就看是不是初始化了所有儲存屬性。
(2)便利:輔助,最終呼叫本類裡的指定。
思考:如何區分指定和便利?
便利建構函式需要在init前加上convinience關鍵字3、必須遵守的規範(案例演示)
規則 1——指定建構函式必須從它的直系父類呼叫指定建構函式規則 2——便捷建構函式必須從相同的類裡呼叫另乙個建構函式(可以是指定也可以是便捷)
規則 3——便捷建構函式最終必須呼叫乙個指定建構函式
簡單記憶的這些規則的方法如下:
指定建構函式必須總是向上委託。
便捷建構函式必須總是橫向委託。
import
foundation
class
car//便捷建構函式,必須呼叫指定建構函式
convenience
init()
}class
bus:
car//便捷構造器-必須呼叫其他的建構函式(指定)
convenience
init
(wheels:
int)
//便捷構造器-必須呼叫其他的建構函式(便捷)
convenience
init()
}
Swift 便利建構函式和指定建構函式繼承關係
這裡先給出兩個類,乙個是person類,乙個是student類 import foundation class person 指定建構函式 init name string,weight double 便利建構函式 convenience init name string,weight double...
構造器 二 指定構造器 便利構造器
在swift中類一共有兩種構造器 我個人的理解為在類中沒有加任何關鍵字的構造器稱為指定構造器,作用為初始化類中所有的例項儲存屬性 init 我個人理解為在類中 只能在類中,結構體和列舉裡面是沒有的 加上convenience關鍵字的構造器為便利構造器,作用為輔助性呼叫指定構造器進行一系列的工作。感覺...
構造器 二 指定構造器 便利構造器
在swift中類一共同擁有兩種構造器 我個人的理解為在類中沒有加不論什麼keyword的構造器稱為指定構造器。作用為初始化類中全部的例項儲存屬性 init 我個人理解為在類中 僅僅能在類中,結構體和列舉裡面是沒有的 加上conveniencekeyword的構造器為便利構造器,作用為輔助性呼叫指定構...