← Kembali ke kursus
Pelajaran kursus · Dart
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)`.