Sobes.tech
Junior — Middle

Kotlin-də data class-ın daxili səviyyədə necə həyata keçirildiyini və işlədiyini izah edə bilərsinizmi?

sobes.tech Süni İntellekt

AI-dan cavab

Kotlin-də data class — bu məlumatların saxlanması üçün nəzərdə tutulmuş xüsusi sinifdir. Tərtib zamanı tərtibçi avtomatik olaraq bir neçə faydalı metod yaradır:

  • equals()hashCode() — obyektləri dəyərinə görə müqayisə etmək üçün, əlaqə yox.
  • toString() — obyektin rahat sətir təqdimatı üçün.
  • copy() — obyektin nüsxəsini yaratmaq, bəzi xüsusiyyətləri dəyişdirmək imkanı ilə.
  • componentN() funksiyaları — obyektin destrukturizasiyası üçün.

Daxili olaraq, data class əsas konstruktorunda elan olunan xüsusiyyətləri ehtiva edir və onlara giriş metodları yaradılır. Bu, təkrarlanan kodu qarşısını alır və bu cür siniflərlə işləməni rahat və təhlükəsiz edir.

Nümunə:

data class User(val name: String, val age: Int)

val user1 = User("Alice", 30)
val user2 = user1.copy(age = 31)
println(user1) // User(name=Alice, age=30)
println(user1 == user2) // false
val (name, age) = user1
println(name) // Alice