Sobes.tech
Junior — Middle

Kotlinda bir nechta konstruktorlarga ega sinfni belgilash mumkinmi?

sobes.tech AI

AIdan javob

Ha, Kotlin'da bir sinfni bir nechta konstruktor bilan belgilash mumkin. Buning uchun bir asosiy (primary) va bir yoki bir nechta ikkilamchi (secondary) konstruktorlar ishlatiladi.

Asosiy konstruktor sinfning sarlavhasida e'lon qilinadi, va ikkilamchi — sinfning tanasida constructor kalit so'zi bilan.

Misol:

class User(val name: String) {
    var age: Int = 0

    // Ikkilamchi konstruktor
    constructor(name: String, age: Int) : this(name) {
        this.age = age
    }
}

Bu yerda asosiy konstruktor name ni qabul qiladi, ikkilamchi — name va age. Ikkilamchi konstruktor asosiyni : this(name) orqali chaqiradi va qo'shimcha xususiyatni boshlaydi.