Kotlin Dersleri #12 – Sınıf – Class

Kotlin derslerine sınıf örnekleri ile devam ediyoruz.

Sınıflar class anahtar kelimesi ile tanımlanırlar. Aşağıdaki örneklerle snıf mantığını daha iyi anlayacağınızı düşünüyorum.

Örnek1:
class Invoice { … }

Constructors
Kotlin’deki bir sınıf, bir adet birincil constructor ve bir veya daha fazla ikincil constructor’a sahip olabilir. Birincil constructor, sınıf başlığının bir parçasıdır: sınıf adına parametre olarak tanımlanabilir.

Örnek2: class Person constructor(firstName: String) { … }

Örnek3: class Person(firstName: String) { … }

Örnek4: class InitOrderDemo(name: String) {
val firstProperty = “First property: $name”.also(::println)

init {
println(“First initializer block that prints ${name}”)
}

val secondProperty = “Second property: ${name.length}”.also(::println)

init {
println(“Second initializer block that prints ${name.length}”)
}
}
Çıktı4: First property: hello
First initializer block that prints hello
Second property: 5
Second initializer block that prints 5

Örnek5: class Customer(name: String) {
val customerKey = name.toUpperCase()
}

Örnek6: class Person(val firstName: String, val lastName: String, var age: Int) { … }

Örnek7: class Customer public @Inject constructor(name: String) { … }

Secondary Constructors
Örnek8: class Person(val name: String) {
constructor(name: String, parent: Person) : this(name) {
parent.children.add(this)
}
}

Örnek9: class Constructors {
init {
println(“Init block”)
}

constructor(i: Int) {
println(“Constructor”)
}
}
Çıktı9: Init block
Constructor

Örnek10: class Customer(val customerName: String = “”)

fun main() {

val customer = Customer(“Emre Akçadağ”)

println(customer.customerName)
}
Çıktı10: Emre Akçadağ

Class yapısını örneklerle anlayacağınızı düşünüyorum. Eklememi veya anlatmamı istediğiniz yerleri lütfen belirtin.
Bir sonraki derste görüşmek üzere.

Sorularınızı ve isteklerinizi yorum bölümünden iletebilirsiniz.