Sobes.tech
Junior

Kotlin'de kalıtım hakkında bilgi verin.

sobes.tech yapay zeka

AI'dan gelen yanıt

Kotlin'de kalıtım, mevcut sınıflar temel alınarak yeni sınıflar oluşturmayı sağlayan bir mekanizmadır. Yeni sınıf (alt veya türetilmiş), ebeveyn (temel) sınıfın özelliklerini (değişkenler) ve metodlarını (fonksiyonlar) miras alır. Bu, kodun yeniden kullanılmasını ve sınıf hiyerarşilerinin oluşturulmasını teşvik eder.

Ana özellikler:

  1. Varsayılan olarak açık değildir: Kotlin'de sınıflar ve metodlar varsayılan olarak finaldır, yani miras alınamaz veya üzerine yazılamazlar. Miras izni vermek için açıkça open anahtar kelimesi ile işaretlenmeleri gerekir.
  2. Yapıcılar (Constructors): Alt sınıf, temel sınıflardan birinin yapıcısını çağırmalıdır (birden fazla varsa, arayüzler durumunda). Çağrı, alt sınıf tanımlanırken (...) kullanılarak yapılır.
  3. Metod ve özelliklerin üzerine yazma: Temel sınıftaki bir metod veya özelliği alt sınıfta üzerine yazmak için, bunlar temel sınıfta open ile işaretlenmiş ve alt sınıfta override ile belirtilmiş olmalıdır.
  4. super: super anahtar kelimesi, temel sınıfın üyelerine alt sınıftan erişmek için kullanılır.
  5. Tekli uygulama kalıtımı: Kotlin, tekli uygulama kalıtımını destekler (bir sınıftan), ancak arayüzlerin çoklu kalıtımını destekler.

Örnek temel sınıf:

// Temel sınıf
open class Animal(val name: String) {
    open fun makeSound() {
        println("$name bir ses çıkarıyor")
    }
}

Alt sınıf örneği:

// Alt sınıf
class Dog(name: String) : Animal(name) {
    override fun makeSound() {
        println("$name havlar")
    }
}

Kullanım:

// Nesnelerin kullanımı
fun main() {
    val animal = Animal("Genel Hayvan")
    animal.makeSound() // Çıktı: Genel Hayvan bir ses çıkarıyor

    val dog = Dog("Buddy")
    dog.makeSound() // Çıktı: Buddy havlar
}