Junior — Middle
Kotlin-də məlumat siniflərinin hansı xüsusiyyətləri və məhdudiyyətləri var?
sobes.tech Süni İntellekt
AI-dan cavab
Kotlin-də məlumat sinifləri (data class) məlumatların saxlanılması üçün nəzərdə tutulmuşdur və avtomatik olaraq faydalı metodlar təmin edir: equals(), hashCode(), toString(), copy() və destruktur funksiyaları.
Xüsusiyyətlər və məhdudiyyətlər:
- Sinif ən azı bir parametrə malik olmalıdır.
primary constructor-da elan olunan bütün parametrlər avtomatik olaraq xüsusiyyətlərə çevrilir.- Sinif abstrakt, açıq, daxili və ya digər siniflərdən irs almaq mümkün deyil (amma interfeysləri həyata keçirə bilər).
- Kompilyator yalnız konstruktor daxilində elan olunan xüsusiyyətlər üçün metodlar yaradır, əlavə xüsusiyyətlər üçün yox.
- Əgər istəyirsinizsə, yaradılan metodları üst-üstə yaza bilərsiniz.
Nümunə:
data class User(val name: String, val age: Int)
val user1 = User("Alice", 30)
val user2 = user1.copy(age = 31) // yeni obyekt yaradacaq, yaş dəyişdirilib
println(user1) // User(name=Alice, age=30)