一了嚎、var和val用來定義變量。
var:可變變量
val:不可變變量
二咧七、companion object(伴生對(duì)象)
三、?和H握继阻!
? ? ?:當(dāng)某個(gè)變量的值可以為?null?的時(shí)候废酷,必須在聲明處的類型后添加???來標(biāo)識(shí)該引用可為空瘟檩。
!3后 :不為空才能執(zhí)行墨辛。
四、Any
在 Kotlin 中所有類都有一個(gè)共同的超類?Any趴俘。
五睹簇、open
kotlin中類默認(rèn)不可繼承奏赘,想要被繼承,加open修飾符太惠。
六磨淌、延遲初始化? ?lateinit? ?和? ?by lazy
lateinit:
作用:編譯時(shí)不要因?yàn)閷傩宰兞课幢怀跏蓟鴪?bào)錯(cuò)。
var屬性對(duì)應(yīng)lateinit
Kotlin并不支持對(duì)原生類型進(jìn)行l(wèi)ateinit凿渊。原因:因?yàn)镵otlin會(huì)使用null來對(duì)每一個(gè)用lateinit修飾的屬性做初始化梁只,而基礎(chǔ)類型是沒有null類型,所以無法使用lateinit
val屬性對(duì)應(yīng)by lazy
七:Kotlin的類會(huì)對(duì)每個(gè)聲明的屬性自動(dòng)生成對(duì)應(yīng)的get/set方法埃脏,只讀類型的val只有g(shù)et方法搪锣,可變類型的var有g(shù)et/set方法
-----------------------------------------------------------------------------------------------------------------------------------一 構(gòu)造函數(shù) (只有一個(gè)主構(gòu)造函數(shù),多個(gè)次構(gòu)造函數(shù))