Junior — Middle
Може ли да се дефинира клас в Kotlin с няколко конструктора?
sobes.tech AI
Отговор от AI
Да, в Kotlin може да се дефинира клас с няколко конструктора. За това се използва един основен (primary) конструктор и един или няколко вторични (secondary) конструктора.
Основният конструктор се обявява в заглавието на класа, а вторичните — вътре в тялото на класа с ключовата дума constructor.
Пример:
class User(val name: String) {
var age: Int = 0
// Вторичен конструктор
constructor(name: String, age: Int) : this(name) {
this.age = age
}
}
Тук основният конструктор приема name, а вторичният — name и age. Вторичният конструктор извиква основния чрез : this(name) и инициализира допълнителното свойство.