Pelajaran 20
Class dan constructor
Class, named/default/redirecting constructor, initializer.
Pahami konsepnya
Class Dart: class Siswa { String nama; int poin; Siswa(this.nama, this.poin); }. Constructor bisa bernama: Siswa.kosong() : nama = "", poin = 0;. Redirecting: Siswa.dariJson(Map m) : this(m["nama"], m["poin"]);. Initializer list: Siswa() : poin = 0, assert(nama.isNotEmpty);
Coba contoh kode
class Siswa {
String nama;
int poin;
Siswa(this.nama, this.poin);
Siswa.kosong() : nama = "?", poin = 0;
Siswa.istimewa(String n) : this(n, 100);
}
void main() {
var a = Siswa("Ari", 17);
var b = Siswa.kosong();
var c = Siswa.istimewa("Budi");
print("${a.nama} ${b.nama} ${c.nama}");
}this.nama mengisi field langsung di parameter constructor. Named constructor .kosong() dan .istimewa() membuat instance dengan cara berbeda.
Latihan singkat
Uji: Siswa("Ari",17).info() harus `Ari (17)`.