Özet - Sınıf temelleri
- Kotlin kursu
- Başlangıç
- Ders 111/116
- 5 dk
class, constructor ve metotları birleştirerek bir User sınıfı yazarsın.
Özet - Sınıf temelleri
Bu grupta class ile yeni tür tanımlamayı, birincil yapıcı ile özellik oluşturmayı, val/var özelliklerini, sınıf içinde metod yazmayı ve this ile parametre-özellik çakışmasını çözmeyi öğrendin.
Şimdi hepsini birleştiren küçük bir görevle bilgini sınamak gerekiyor: bir sınıfa özellik, metod ve this kullanan bir yeniden adlandırma metodu ekle. Bu, gerçek bir sınıf tasarımının küçük bir örneğidir.
Uygulama Person'a rename ve greet ekle
class Person(var name: String) tanımla; gövdesine fun greet() = "Merhaba $name" ve fun rename(name: String) { this.name = name } ekle. main içinde val p = Person("Ayşe") oluştur, p.rename("Alex") çağır ve println ile p.greet()'i yazdır.
Başlangıç kodu
fun main() {
// Bir Person sınıfı tanımla: name özelliği, greet ve rename metoduyla
// rename this ile parametreyi ayırmalı; örnek oluştur, rename ve greet çağır
}Örnek çözüm
class Person(var name: String) {
fun greet() = "Merhaba $name"
fun rename(name: String) {
this.name = name
}
}
fun main() {
val p = Person("Ayşe")
p.rename("Alex")
println(p.greet())
}Beklenen çıktı
Merhaba Alex
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Araç ve amacı eşleştir
| Kavram | Anlamı |
|---|---|
class |
Sınıf |
constructor |
Yapıcı |
val/var |
Özellik |
fun |
Metod |
2 this neyi ifade eder?
- this parametre için kullanılmaz
- this şu anki nesneyi verir Doğru cevap
- this bir özelliktir
- this her zaman gereklidir
Açıklama: this şu anki örneğe işaret eder.
3 Boşluğu doldur: this ile ata
fun rename(name: String) {
____.name = name
}
fun rename(name: String) {
this.name = name
}
Açıklama: this.name özelliğe işaret eder.