INIT

Designated Initializers(指定構(gòu)造器)

Convenience Initializers(便捷構(gòu)造器)


1、Struct 沒(méi)有設(shè)置構(gòu)造函數(shù)時(shí),會(huì)默認(rèn)有一個(gè)?Memberwise Initializers(逐一函數(shù))。

2、給存儲(chǔ)型類型屬性賦默認(rèn)值或在初始構(gòu)造器中設(shè)置初始值時(shí),此屬性的屬性觀察者不會(huì)被調(diào)用。

3、構(gòu)造器的第一個(gè)內(nèi)部參數(shù)名也會(huì)默認(rèn)作為其外部參數(shù)名供調(diào)用,這點(diǎn)與其他函數(shù)不同。

4、在初始化一個(gè)類、結(jié)構(gòu)體、枚舉時(shí),調(diào)用其構(gòu)造方法,也僅僅是調(diào)用構(gòu)造方法。

5、構(gòu)造器代理:可以在構(gòu)造方法里應(yīng)用本類的其他構(gòu)造方法。

6、在結(jié)構(gòu)體(Struct)的擴(kuò)展里寫(xiě)自定義構(gòu)造器,不會(huì)覆蓋系統(tǒng)默認(rèn)的Memberwise Initializers,但是如果未卸載擴(kuò)展里面,則會(huì)覆蓋。

7、指派構(gòu)造函數(shù)初始化時(shí),應(yīng)先將自身的屬性對(duì)象賦值,然后再調(diào)用父類的指派構(gòu)造函數(shù)。

8、便利構(gòu)造器,只能在Class中使用

9、復(fù)寫(xiě)默認(rèn)init方法,之前標(biāo)注private,只能對(duì)非當(dāng)前文件有效,在當(dāng)前文件中,如extension中,依舊可以調(diào)用該init方法

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容