Junior
Wie kann man in Kotlin mehrere Konstruktoren in einer Klasse implementieren?
sobes.tech KI
Antwort von AI
In Kotlin kann eine Klasse einen primären Konstruktor und einen oder mehrere sekundäre Konstruktoren haben.
-
Primärer Konstruktor: Wird in der Klassendeklaration definiert. Kann Parameter haben.
class MeineKlasse(private val eineEigenschaft: String) { // Primärer Konstruktor mit Parameter // Klassenkörper } -
Sekundäre Konstruktoren: Werden mit dem Schlüsselwort
constructordeklariert. Wenn die Klasse einen primären Konstruktor hat, muss jeder sekundäre Konstruktor direkt oder indirekt an ihn delegieren, indem erthis()verwendet.class AndereKlasse(private val primärerWert: Int) { // Primärer Konstruktor constructor(einAndererWert: String) : this(einAndererWert.length) { // Sekundärer Konstruktor, der an den primären delegiert // Logik des sekundären Konstruktors println("Erstellt mit String: $einAndererWert") } constructor(wert1: Int, wert2: Int) : this(wert1 + wert2) { // Ein weiterer sekundärer Konstruktor // Logik println("Erstellt mit zwei ints: $wert1, $wert2") } }
Ohne primären Konstruktor sind sekundäre Konstruktoren nicht verpflichtet, an andere Konstruktoren der Klasse zu delegieren (können es aber).
class KlasseOhnePrimärenKonstruktor {
constructor(wert: Int) {
println("Erstellt mit int: $wert")
}
constructor(wert: String) {
println("Erstellt mit String: $wert")
}
}