Kotlin Sınıflar (Class) – Ders 6

Kotlin Sınıflar (Class) – Ders 6

Sınıf değişkenleri, sabitleri, fonksiyonları içinde bulunduran bir yapıdır. Kotlinde de Java’daki gibi bütün yazılan kodlar bir sınıf içinde bulunmalıdır. Classların bir çok farklı kullanımı var fakat şu an en temel şeklinde anlatmaya çalışacağım.

Android Studio’da bir proje oluşturduğumuzda ilk olarak MainActivity’nin oluştuğunu görmüştük. MainActivity burada bir sınıf görevindedir. Yanında : (iki nokta ile birlikte) AppCompatActivity ise başka bir class’tır. Fakat arada 2 nokta olduğu için bu class’tan miras alındığını göstermektedir. Yani AppCompatActivity’nin kullanılmaya uygun fonksiyon ve değişkenlerini bu yeni class’ta kullanabilir demektir.

class MainActivity : AppCompatActivity() { /*.....*/}

NOT : AppCompactActivity’i miras almasından dolayı MainActivity class olduğu gibi android dilinde artık bir Activity özelliği de taşımış olmaktadır.

Class Oluşturma

Class oluştururken android studio’da File – New- Kotlin File/Class yolunu izleyerek oluşturabiliriz. Oluştururken ismini yazmamız gerekiyor. Burası örnek yapmak adına Singer() olsun. Şarkıcıların bilgilerini içeren basit bir class yapalım.

class Singer {

    var name  = ""
    var age = 0
    var type = ""
}

Böyle bir class oluşturduk. Şarkıcının adını yaşını ve hangi türde söylediğini yazacağız. Fakat buraları boş bırakmadık. Şuan için buralara bir değer yazmamız gerekiyor. Ama daha sonradan tamamen sonradan tanımlı şekilde nasıl olacak onu da gösteririz. Şimdi bunu MainActivity class’ı bir nesne olarak çağırıp nesnenin değerlerini tanımlayalım.

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        var tarkan = Singer()
        tarkan.name = "Tarkan"
        tarkan.age = 48
        tarkan.type = "Pop"

        System.out.println(tarkan.name + "/" + tarkan.age + "/" + tarkan.type)
        val sagopa = Singer()
        sagopa.name = "Sagopa Kajmer"
        sagopa.age = 40
        sagopa.type = "Rap"

        System.out.println( sagopa.name + "/" + sagopa.age + "/" + sagopa.type)



    }
}

Göründüğü gibi bir class’ın bir den çok nesnesinin kullanımı da bu şekilde oluyor.

Şimdilik burada bırakalım bir sonraki derste constructor (yapıcı fonksiyon) ve class’tan parametre isteme konularına değinelim

Bir cevap yazın