Sobes.tech
Junior

'init' bloki nima va u Kotlin tilida qanday ishlatiladi?

sobes.tech AI

AIdan javob

Kotlin'da init bloki sinfning boshlovchisidir. U sinfning nusxasi yaratilganda, konstruktor chaqirilgandan (asosiy yoki ikkinchisi) va sinf xususiyatlari e'lon qilinishidan oldin bajariladi. Bu ob'ektning to'g'ri boshlanishi uchun zarur bo'lgan kodni bajarish uchun ishlatiladi.

Xususiyatlar:

  • Bir sinfda bir nechta init bloklari bo'lishi mumkin.
  • init bloklari sinfning tanasida e'lon qilingan tartibda bajariladi.
  • Odatda, ular konstruktor kirish parametrlarini tekshirish, hisoblashlar qilish yoki ob'ektning boshlang'ich holatini sozlash uchun ishlatiladi.

Misol:

class Person(name: String) {
    val formattedName: String

    init {
        // Kirish ma'lumotlarini tekshirish
        require(name.isNotBlank()) { "Ism bo'sh bo'lishi mumkin emas" }
        // Ma'lumotlarni ichki foydalanish uchun formatlash
        formattedName = name.trim().toUpperCase() 
    }

    init {
        // Qo'shimcha boshlang'ich logika, agar kerak bo'lsa
        println("Person ob'ektini boshlash: nomi: $formattedName")
    }
}