構文
Kotlinでは以下のようにプライマリコンストラクタをクラスヘッダーに書くことができる。
class Car constructor(brand: String) { /* 任意のコード */ }
また、アノテーションや可視性修飾子がない場合は"constructor"キーワードを省略できる。
class Car(brand: String) { /* 任意のコード */ }
追加:イニシャライザブロック
class Car constructor(brand: String) { val message1 = "brand is $brand".also(::println) init { println("1つ目のイニシャライザブロック") } val message2 = "length is ${brand.length}".also(::println) init { println("2つ目のイニシャライザブロック") } } fun main() { Car("Mazda") }
実行結果
brand is Mazda 1つ目のイニシャライザブロック length is 5 2つ目のイニシャライザブロック