Swift之默認與自定義構(gòu)造函數(shù)

引入:不給存儲屬性賦值,報錯
定義類屬性不報錯,結(jié)構(gòu)體的實例時必須為所有的存儲屬性設(shè)置一個合適的初始值
不報錯,3種方式:
1 可選型
2 直接定義的時候初始化,直接=
3 構(gòu)造函數(shù)中初始化

知識點一:構(gòu)造函數(shù)的作用
1、構(gòu)造函數(shù)用于初始化一個類的實例(創(chuàng)建對象)
2、默認情況下載創(chuàng)建一個類時,必然會調(diào)用一個構(gòu)造函數(shù)
3、即便是沒有編寫任何構(gòu)造函數(shù),編譯器也會提供一個默認的構(gòu)造函數(shù)

知識點二:默認構(gòu)造函數(shù)
1、使用 init 關(guān)鍵字來寫,
2、構(gòu)造函數(shù)沒有func修飾
3、構(gòu)造函數(shù)默認完成調(diào)用 不能手動調(diào)用
4、構(gòu)造函數(shù)就像一個沒有形式參數(shù)的實例方法,

知識點三:自定義構(gòu)造函數(shù)
1、可以自定義構(gòu)造函數(shù)
2、自定義構(gòu)造函數(shù)和默認構(gòu)造函數(shù)可以同時存在

class Person{
    var name:String
    var age:Int
    var sex:String
    //默認構(gòu)造函數(shù)
     init() {
         print("init被調(diào)用")
         self.name = "張三"
         self.age = 10
         self.sex = "男"
     }
     //自定義構(gòu)造函數(shù)
     init(name:String,age:Int,sex:String){
         self.name = name
         self.age = age
         self.sex = sex
     }
}
var p = Person()
p.name
p.age

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

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

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