0Pricing
Dart Academy · Pelajaran

extends dan Penggantian Metode

Membagikan dan mengkhususkan perilaku induk

extends dan Penggantian Metode adalah pelajaran Dart Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Dart Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Dart Academy mencakup 4 pelajaran total.

Berbagi Perilaku

Ketika dua kelas berbagi sebagian besar perilakunya, Anda dapat menuliskannya sekali lalu menggunakannya kembali. Dart menyebutnya pewarisan, dan cara ini menyelamatkan Anda dari salin-tempel. 🌱

Kata Kunci extends

Anda melakukan pewarisan dengan menulis extends setelah nama kelas. Kelas baru tersebut menjadi anak yang secara otomatis memperoleh bidang dan metode dari induknya.

class Animal {}
class Dog extends Animal {}

Induk dan Anak

Kelas yang Anda perluas disebut superkelas (induk). Kelas baru disebut subkelas (anak). Dog adalah Animal, tetapi tidak setiap Animal adalah Dog.

Anggota yang Diwariskan

Anak dapat langsung menggunakan metode publik milik induk seolah-olah metode tersebut miliknya sendiri. Anda menulis perilaku yang diwariskan sekali, lalu setiap subkelas mendapat manfaatnya.

class Animal {
  void breathe() => print('breathing');
}
class Dog extends Animal {}
// Dog().breathe() works

Menambahkan Perilaku Baru

Subkelas juga dapat menambahkan metodenya sendiri di atas apa yang diwarisinya. Anak tersebut tetap merupakan Animal, tetapi memperoleh kemampuan tambahan yang tidak dimiliki induknya.

class Dog extends Animal {
  void bark() => print('Woof!');
}

Menimpa Metode

Terkadang versi milik induk tidak sesuai untuk anaknya. Penggantian memungkinkan subclass mengganti method yang diwarisi dengan implementasinya sendiri.

class Animal {
  void speak() => print('...');
}
class Cat extends Animal {
  void speak() => print('Meow');
}

Penanda @override

Tambahkan anotasi @override di atas method yang diganti. Anotasi ini memberi tahu penganalisis untuk memastikan induknya benar-benar memiliki method tersebut, sehingga salah ketik dapat ditemukan lebih awal.

class Cat extends Animal {
  @override
  void speak() => print('Meow');
}

Signature yang Sama Diperlukan

Override harus mempertahankan nama yang sama dan signature yang kompatibel. Jika Anda mengubah parameter atau tipe kembalian secara sembarangan, Dart akan menolaknya.

Menggunakan Kembali Versi Induk

Di dalam override, Anda tetap dapat memanggil versi asli melalui super, lalu menambahkan langkah Anda sendiri di sekitarnya. Anda memperluas perilaku, bukan membuangnya.

@override
void speak() {
  super.speak();
  print('and purrs');
}

Polimorfisme dalam Aksi

Simpan objek anak dalam variabel bertipe Animal lalu panggil speak: masing-masing menjalankan versinya sendiri. Inilah polimorfisme, manfaat utama dari overriding.

Animal a = Cat();
a.speak(); // Meow

Pewarisan Tunggal

Sebuah class Dart dapat memperluas tepat satu superclass, tidak pernah dua. Untuk berbagi kemampuan di antara hierarki yang tidak berhubungan, nanti Anda dapat menggunakan mixin.

Pemeriksaan Singkat

Anda mengganti method yang diwarisi dalam sebuah subclass. Apa yang dilakukan method tersebut?

Ringkasan

Anda menggunakan extends untuk mewarisi anggota dari induk, menambahkan method baru, dan mengganti method lain dengan @override. Itulah inti penggunaan kembali class. 🎉

Pertanyaan yang Sering Diajukan

Apakah pelajaran “extends dan Penggantian Metode” gratis?

Ya — teks lengkap “extends dan Penggantian Metode” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Dart Academy, upgrade ke CoddyKit PRO. Kursus Dart Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “extends dan Penggantian Metode”?

Membagikan dan mengkhususkan perilaku induk Kamu berlatih Dart Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Dart Academy?

Tidak diperlukan pengalaman sebelumnya. Dart Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.

Berapa lama pelajaran “extends dan Penggantian Metode” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Dart Academy ini?

Ya. Setiap pelajaran Dart Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. extends dan Penggantian Metode
  2. Memanggil super dan Rangkaian Konstruktor
  3. Mixin dengan Kata Kunci with
  4. Batasan on dan Urutan Mixin
← Kembali ke Dart Academy