Junior — Middle
Lze v Kotlinu definovat třídu s více konstruktory?
sobes.tech AI
Odpověď od AI
Ano, v Kotlinu lze definovat třídu s více konstruktory. K tomu se používá jeden hlavní (primary) konstruktor a jeden nebo více vedlejších (secondary) konstruktorů.
Hlavní konstruktor je deklarován v hlavičce třídy, a vedlejší — uvnitř těla třídy klíčovým slovem constructor.
Příklad:
class User(val name: String) {
var age: Int = 0
// Vedlejší konstruktor
constructor(name: String, age: Int) : this(name) {
this.age = age
}
}
Zde hlavní konstruktor přijímá name, a vedlejší — name a age. Vedlejší konstruktor volá hlavní přes : this(name) a inicializuje další vlastnost.