Sobes.tech
Junior

Kotlinде бир класста канча куруучу бардыгын кантип ишке ашыруу керек?

sobes.tech AI

AIден жооп

Kotlinде, класс бир негизги куруучу жана бир нече экинчи куруучуларга ээ болушу мүмкүн.

  1. Негизги куруучу: Класс башталышында аныкталат. Параметрлерди алса болот.

    class МенинКласым(private val кээ бирМаглүмат: String) { // Негизги куруучу параметр менен
        // Класс мүчөсү
    }
    
  2. Экинчи куруучулар: constructor ачкыч сөзү менен жарыяланат. Эгер класс негизги куруучуга ээ болсо, ар бир экинчи куруучу түздөн-түз же кыйыр түрдө ага this() аркылуу делегирлеши керек.

    class БашкаКласс(private val негизгиМаалымат: Int) { // Негизги куруучу
    
        constructor башкаМаалымат: String) : this(башкаМаалымат.length) { // Экинчи куруучу, негизгиге делегирлөө
            // Экинчи куруучунун логикасы
            println("Жаратууда жол менен: $башкаМаалымат")
        }
    
        constructor(баалоо1: Int, баалоо2: Int) : this(баалоо1 + баалоо2) { // Башка экинчи куруучу
            // Логика
            println("Жаратууда эки бүтүн сан менен: $баалоо1, $баалоо2")
        }
    }
    

Эгер негизги куруучу жок болсо, экинчи куруучулар башка куруучуларга делегирлөө менен милдеттүү эмес (бирок болушу мүмкүн).

class НегизгиКуруучуЖок {

    constructor(баалоо: Int) {
        println("Бүтүн сан менен түзүлгөн: $баалоо")
    }

    constructor(баалоо: String) {
        println("Жол менен түзүлгөн: $баалоо")
    }
}