Kotlin學習記錄6 初識類與建構函式

2021-10-05 23:12:41 字數 1718 閱讀 5808

class book constructor

(name:string,price:float)

//主建構函式的引數可以給類內屬性初始化使用

var bookinfo=

"book name:"

+name+

" price:"

+price.

tostring()

;init

//次建構函式的呼叫需要委託給主建構函式

constructor

(name:string,price:float,message:string)

:this

(name,price)

public

funprintinfo()

}

(1)主建構函式在類的名稱之後,是類頭的一部分,如果主建構函式有註解或可見性修飾符,這個 constructor 關鍵字是必需的,並且這些修飾符在它前面,否則可以省略。

constructor

(name:string,price:float)

(2)類要初始化的內容放在初始化塊中,它會伴隨類的建立而執行,可以有多個初始化塊,其執行順序與宣告順序相同。

init

init

(3)次建構函式的呼叫需要委託給主建構函式。

constructor

(name:string,price:float,message:string)

:this

(name,price)

(4)主建構函式的引數可以給類內屬性初始化時使用。

var bookinfo=

"book name:"

+name+

" price:"

+price.

tostring()

;

(5)kotlin沒有new關鍵字。

var book=

book

("小王子"

,30f

,"hello"

)

輸出結果:

初始化塊1

初始化塊2

hello

class student

constructor

(name:string)

constructor

(name: string,age:int)

}}

(1)在建立物件時會根據引數選擇相應的次建構函式

var newstudent=

student

("張三",12

)var newstudent2=

student

("李四"

)

輸出結果:

這裡是初始化塊!

hello,我是 張三,我今年12 歲了

這裡是初始化塊!

hello,我是 李四

Kotlin學習記錄7 初識繼承

open class animal open funprintinfo fungetgender string 1.該類要能被繼承需要使用open修飾符。2.能被子類覆蓋的方法需要使用open修飾。3.能被子類覆寫的屬性需要使用open修飾。class cat animal override fun...

Kotlin學習 Kotlin列舉類

列舉類最基本的用法是實現乙個型別安全的列舉。列舉常量用逗號分隔,每個列舉常量都是乙個物件 enum class color每乙個列舉都是列舉類的例項,它們可以被初始化 enum class color val rgb int 預設名稱為列舉字元名,值從0開始。若需要指定值,則可以使用其建構函式 en...

kotlin學習筆記(5)Kotlin 類與物件

讀書學習筆記 kotlin 開發快速入門與實戰 通過把書中的內容 複述一遍,把 敲一遍,達到複習效果 主要內容 這裡所說的物件導向 是指物件導向程式設計 oop 物件導向包括三個部分 物件導向分析 ooa 物件導向設計 ood 物件導向程式設計 oop 5.1.1 類 萬事萬物都具有其自身的屬性和方...