Sobes.tech
Junior — Middle

Veri sınıfı ile başka bir sınıf arasında kalıtım belirlenebilir mi?

sobes.tech yapay zeka

AI'dan gelen yanıt

Kotlin'de, veri sınıfı (data class) başka bir sınıftan kalıtım alabilir, eğer o sınıf final değilse (yani, kalıtıma açık). Ancak, veri sınıfı otomatik olarak Any sınıfından kalıtım alır ve yapıcıda en az bir parametreye sahip olmalıdır.

Önemli:

  • Veri sınıfı open veya abstract olamaz.
  • Veri sınıfından kalıtım mümkündür, ancak veri sınıfı kendisi ebeveyn olamaz (yani, bir data class'tan kalıtım yapılamaz).

Örnek:

open class Person(val name: String)

data class Employee(val id: Int, val person: Person) : Person(person.name)

Bu şekilde, veri sınıfı ile başka bir sınıf arasında kalıtım mümkündür, ancak kısıtlamalarla ve genellikle nesne gömme (bileşim) kullanımı, veri sınıfları için kalıtım yerine tercih edilir.