Dasar-Dasar Constructor
Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan Dart di Coddy. Pelajaran 8 dari 110.
Constructor adalah method khusus yang berjalan secara otomatis saat kamu membuat object baru. Constructor menginisialisasi variabel instans object tepat pada saat object dibuat.
Berikut contoh class dengan constructor:
class Dog {
String name;
String breed;
Dog(String name, String breed) {
this.name = name;
this.breed = breed;
}
}Constructor memiliki nama yang sama dengan class. Parameter diberikan saat membuat object.
Buat object dengan meneruskan argumen ke constructor:
Dog rex = Dog('Rex', 'German Shepherd');
Dog buddy = Dog('Buddy', 'Golden Retriever');Akses variabel yang ditetapkan oleh constructor:
print(rex.name);
print(rex.breed);
print(buddy.name);
print(buddy.breed);Output:
Rex
German Shepherd
Buddy
Golden RetrieverDart juga menyediakan sintaks konstruktor singkat yang menggunakan this.variableName secara langsung di daftar parameter:
class Dog {
String name;
String breed;
// Cara singkat: otomatis menetapkan parameter ke variabel instance
Dog(this.name, this.breed);
}Kedua versi menghasilkan hasil yang sama. Bentuk singkat ini adalah fitur Dart yang populer dan menghilangkan kebutuhan untuk menulis this.name = name secara manual.
Kamu juga bisa menambahkan nilai default untuk parameter:
class Cat {
String name;
int age;
Cat(this.name, [this.age = 1]); // age bernilai 1 secara default
}
Cat fluffy = Cat('Fluffy', 3);
Cat whiskers = Cat('Whiskers'); // age bernilai 1 secara default
print('${fluffy.name} is ${fluffy.age}'); // Fluffy berusia 3
print('${whiskers.name} is ${whiskers.age}'); // Whiskers berusia 1Poin utama: Konstruktor memastikan setiap object diinisialisasi dengan benar menggunakan data saat dibuat, sehingga kamu tidak perlu mengatur variabel secara manual setelahnya.
Tantangan
MudahKamu diberi file PHP (book.dart dan driver.dart) untuk membuat sistem buku.
Tugasmu:
- Lengkapi class
Bookdibook.dartdengan menambahkan konstruktor yang menginisialisasititle,author, danpages: gunakan sintaks singkat DartBook(this.title, this.author, this.pages); - Di
driver.dart, buat objectBookuntuk'Harry Potter'karya'J.K. Rowling'dengan400halaman
Ikuti komentar TODO di setiap file.
Coba sendiri
import 'book.dart';
void main() {
// TODO: Buat object Book dengan:
// title: 'Harry Potter', author: 'J.K. Rowling', pages: 400
Book myBook = ?;
print("'${myBook.title}' by ${myBook.author}, ${myBook.pages} pages");
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pemrograman Berorientasi Objek
1Dasar-Dasar OOP
file Eksternallibrary dan ImporPengantar OOPClass dan ObjectKata kunci thismethodVariabel InstanceDasar-Dasar ConstructorRingkasan: Kalkulator Sederhana4Keamanan Null
Pengantar Keamanan NullBisa Null vs Tidak Bisa NullOperator ? dan !Kata Kunci late dan Keamanan NullOperator Penanganan NullKeamanan Null dalam classRangkuman: Sistem Profil Pengguna7class Abstrak & Antarmuka
class AbstrakMethod abstrakAntarmuka di DartAntarmuka ImplisitMengimplementasikan vs MemperluasBeberapa AntarmukaRingkasan: Kalkulator Bentuk10Koleksi dan Generik
Gambaran Umum list, set, dan MapKoleksi dengan Tipe AmanKelas GenerikMetode GenerikBatasan GenerikIterable dan IteratorUlasan: Penyimpanan Generik2Konstruktor dalam Dart
Konstruktor DefaultKonstruktor BernamaInitializer ListsKonstruktor KonstanKonstruktor FactoryKonstruktor RedirectingRangkuman, Pembuat Bentuk5Enkapsulasi
Member Publik vs PrivatKonvensi Prefiks _Privasi Tingkat libraryPendalaman Getter & SetterPenyembunyian InformasiRingkasan: Catatan Siswa8Mixin
Pengantar MixinMembuat MixinMenggunakan Beberapa MixinKata Kunci on pada MixinMixin vs. PewarisanMixin vs. InterfaceRangkuman: Sistem Hewan3Property Class
Anggota Instance vs StaticField Final dan ConstVariabel LateMethod dan Field StaticGetter dan SetterRangkuman: Pengelola Rekening Bank6Pewarisan
Pewarisan DasarKata Kunci superPenimpaan methodAnotasi @overrideKata Kunci class finalKonstruktor dan PewarisanRangkuman, Hierarki Karyawan9Polimorfisme
Dasar-Dasar PolimorfismePolimorfisme melalui AntarmukaPemeriksaan Tipe saat RuntimeOperator is & asKata Kunci KovarianRangkuman: Pemroses PembayaranLatihan sendiri: Compiler Dart online