- kotlin中類不一定要與文件名相同重归,一個文件中可以聲明多個類
- kotlin中創(chuàng)建對象不需要使用new關鍵字
- kotlin中類最簡單的聲明方式 class 類名
-
kotlin中類所屬的包是package關鍵字后定義的,與類物理的包位置沒有關系(建議所屬包與物理包一致)
image.png
類可以包含:
- 構造函數和init塊
- 屬性
- 函數
- 嵌套類和內部類
- 對象聲明
構造函數
- kotlin中一個類可以有一個主構造函數和多個次構造函數
- kotlin中構造函數使用constructor關鍵字
- kotlin中如果一個類沒有顯示聲明構造函數库物,會自動生成一個無參的構造函數
主構造函數
-
如果主構造函數沒有任何注解或者可見性修飾符退渗,可以省略constructor 關鍵字
image.png 主構造函數中只能有參數聲明,初始化代碼放在init代碼塊中燕少,init代碼塊可以有多個
主構造函數中的參數可以在init代碼塊和屬性初始化中使用
-
init代碼塊和屬性初始化的執(zhí)行順序與代碼的書寫順序一直
image.png
image.png
次構造函數
- 次構造函數寫在類{}中势决,使用constructor關鍵字后面跟參數列表
- 如果主構造函數中有參數傳入,次構造函數必須直接委托或通過別的次構造函數委托調用主構造函數从隆,委托時使用this關鍵字
- 委托時init塊和屬性初始化會當成主構造函數的一部分先于次構造函數執(zhí)行
image.png