Kotlin Öğreniyorum, Class ve Functions — Part 2
Kotlin java ile uyumlu çalışıyor , bir önceki yazıdaki message.text yerine message.setText dediğimizde de çalışır vaziyettedir.
Kotlinde yazdığımız kodların sonuna “ ; “ eklememize gerek yok.
Parantezler yerine ” =” yazabiliriz.
Class tanımlamaları “class” keywordu kullanarak yapılır.Javada biz public class.. gibi tanımlamalar yapardık.Burda classlar defaultta closed statude.open ve abstract olarak tanımlayabiliriz.
class MainActivity{
}
Constructur yaratmak istiyorsak sınıfı aşağıdaki gibi yazabiliriz.
class Teacher(teacherName: String, teacherSurname: String)
burada öncelikle değişkenin ismini yazıyoruz(teacherName) daha sonra : yazarak değişkenin tipini belirliyoruz (string)
init {
} blogu içerisinde sınıf tanımlamalarımızı yapıyoruz.
init bloğu içinde diğer değişkenlere thisanahtar kelimesini kullanarak erişiyorum.
class Teacher(teacherName: String, teacherSurname: String) {
var firstName: String
var lastName: String
init {
this.firstName = teacherName
this.lastName = teacherSurname
}
}Burda tanımladığım var firstName ‘i açıklayacak olursam, değişkenler var ve val olarak iki şekilde tanımlanıyor. var değeri sonradan değiştirilebilen değişkenler, val ise sadece okunabilir (read-only) değişkenler için kullanıyoruz.
Fonksiyonlar
fonksiyonlar fun keyword’ü ile tanımlanıyor.
Kotlin her zaman bir value döndürüyor fonksiyonlarda.Spesifik bir value dönmeyecekse Unit dönüyor.Unit javadaki void gibi.
Fonksiyonlardaki parametlerin default değerlerini verebiliriz fonksiyon tanımında.
Örneğin :
fun toast(message: String, length: Int = Toast.LENGTH_LONG) {
Toast.makeText(this, message, length).show()
}Burdaki ikinci parametre olan length default olarak tanımlanmış.Yazmasakta olur.
String ifadeleri yazarken $message bu şekilde tanımlarız.Daha karmaşık string ifadeleri yazmak istersek parantez kullanabiliriz ${user.name}.
Örnek MainActivity classımız:
package com.example.buse.learnkotlin
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.widget.Toast
import kotlinx.android.synthetic.main.activity_main.*
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
message.text = "hello kotlin"
val teacher = Teacher("buse", "tekin")
toast(teacher.firstName +" "+teacher.lastName)
}
fun toast(message: String, length: Int = Toast.LENGTH_LONG) {
Toast.makeText(this, message, length).show()
}
}Yukarıda tanımladığımız Teacher sınıfından bir nesne oluşturduk ve Toast mesajıyla öğretmenin adını soyadını yazdırdık.

Bu yazıda class ve fonksiyondan bahsetmeye çalıştım.Diğer yazılarda görüşmek üzere.
