CodeBlanks Logo Icon CodeBlanks

Sınıflar

class ve constructor ile veri modelini kurarsın.

Sınıflar

Şimdi Book sınıfını ekleyeceğiz. Bir kitabın bir başlığı vardır; bu yüzden String title alanı ve Book(this.title) kurucusu yazacağız. Böylece kütüphanemizde kitapları temsil edebiliriz.

Sınıflar, gerçek dünyadaki nesneleri kodda modeller. Book bir kitabı, Library bir kütüphaneyi temsil eder. Her sınıf kendi alanlarını ve davranışlarını taşır. Bir uygulamada birden çok sınıf yan yana çalışır; biri diğerini kullanır. Bu derste hem Library hem Book sınıfını birlikte kullanacağız.

İki sınıfı birlikte kullan

Birden çok sınıf tek dosyada yan yana tanımlanabilir. Library ve Book sınıfları birlikte çalışabilir. main içinde ikisinden de nesne yaratıp birlikte kullanırsın. Örneğin bir kitap oluşturup başlığını kütüphane bilgisinin altına yazdırabilirsin.

Bu yaklaşım, büyük uygulamaların temelidir. Her sınıf tek bir işi iyi yapar; sınıflar birbirleriyle konuşur. Bu derste Library kütüphaneyi, Book kitabı temsil eder; main ikisini bir araya getirir. Sonraki derste kitapları bir listede toplayacağız.

Uygulama Book sınıfını ekle

Aşağıdaki kodda Library sınıfı zaten tanımlı. Şimdi Book sınıfını tanımla: String title alanı ve Book(this.title) kurucusu olsun. main içinde final b = Book("Suç ve Ceza"); ile bir kitap yarat ve print("Yeni kitap: ${b.title}") ile yazdır.

Başlangıç kodu

main.dart
class Library {
  String name;
  Library(this.name);
  void info() {
    print("Kütüphane: $name");
  }
}

void main() {
  final lib = Library("Şehir");
  lib.info();
  // Book sınıfını tanımla ve bir kitabı yazdır
}

Örnek çözüm

main.dart
class Library {
  String name;
  Library(this.name);
  void info() {
    print("Kütüphane: $name");
  }
}

class Book {
  String title;
  Book(this.title);
}

void main() {
  final lib = Library("Şehir");
  lib.info();
  final b = Book("Suç ve Ceza");
  print("Yeni kitap: ${b.title}");
}

Beklenen çıktı

Kütüphane: Şehir
Yeni kitap: Suç ve Ceza

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Book sınıfı

Soru
____ Book {
  String title;
  Book(this.title);
}
Cevap
class Book {
  String title;
  Book(this.title);
}

Açıklama: class Book ile başlatılır.

2 Book sınıfının kurucusu nasıl yazılır?

main.dart
class Book {
  String title;
  ____
}
  • Book(this.title)
  • Book() Doğru cevap
  • new Book()
  • title()

Açıklama: Book(this.title) kurucusu title alanını atar.

3 Sınıf kullanımını eşleştir

Kavram Anlamı
Library kütüphaneyi taşır
Book kitabı taşır
main birleştirir
lib.info() kütüphane bilgisini yazdırır

Başlangıç bölümündeki tüm dersler