Sobes.tech
Junior — Middle

Derleyici data class için hangi otomatik yöntemleri oluşturur ve bunlar ne amaçla kullanılır?

sobes.tech yapay zeka

AI'dan gelen yanıt

Kotlin'de, data class için derleyici otomatik olarak, nesnelerle çalışmayı kolaylaştıran birkaç kullanışlı yöntem üretir:

  • equals() — tüm özelliklerin değerine göre nesneleri karşılaştırmak için.
  • hashCode()equals() ile uyumlu bir hash kodu almak için.
  • toString() — tüm özelliklerin listelendiği nesnenin dize temsili döner.
  • copy() — bazı özellikleri değiştirme imkanıyla nesnenin kopyasını oluşturur.
  • componentN() fonksiyonları — nesnenin ayrıştırılması için kullanılır.

Örnek:

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) = user2
println(name) // Alice
println(age) // 31

Bu metodlar, değiştirilemez nesnelerle çalışmayı kolaylaştırır ve kodu daha ifadeli hale getirir.