Class dan Object
Termasuk bagian Pemrograman Berorientasi Objek dalam perjalanan Dart di Coddy. Pelajaran 4 dari 110.
class dan object memiliki tujuan yang berbeda. class adalah cetak biru, sedangkan object adalah sesuatu yang kamu buat dari cetak biru tersebut.
Berikut contoh class dengan variabel instans:
class Dog {
String name = '';
String breed = '';
}Variabel yang dideklarasikan di dalam class (seperti name dan breed) dimiliki oleh setiap object yang dibuat dari class tersebut. Nanti, kita akan mempelajari variabel instance secara mendalam.
Buat beberapa object dari class yang sama:
Dog dog1 = Dog();
Dog dog2 = Dog();Setiap object dapat memiliki nilai uniknya sendiri untuk variabel-variabel tersebut:
dog1.name = 'Nicky';
dog1.breed = 'Siberian Husky';
dog2.name = 'Teemon';
dog2.breed = 'Labrador';Gunakan operator titik . untuk mengakses variabel milik object:
print('${dog1.name} is a ${dog1.breed}');
print('${dog2.name} is a ${dog2.breed}');Output:
Nicky is a Siberian Husky
Teemon is a LabradorPerbedaan Utama: Class Dog mendefinisikan struktur yang dimiliki semua anjing, sedangkan dog1 dan dog2 adalah object individual dengan data unik masing-masing.
Tantangan
MudahLengkapi kode untuk membuat dua object student dari class Student dan menetapkan variabelnya.
student.dart: Berisi classStudent(terkunci)driver.dart: Buat dua object dan tetapkan datanya
Tetapkan nilai berikut:
student1: name adalah'Alice'dengan grade'A'student2: name adalah'Bob'dengan grade'B'
Coba sendiri
import 'student.dart';
void main() {
// TODO: Buat dua object Student
// TODO: Atur name dan grade untuk student1 (name: 'Alice', grade: 'A')
// TODO: Atur name dan grade untuk student2 (name: 'Bob', grade: 'B')
print('${student1.name} has grade ${student1.grade}');
print('${student2.name} has grade ${student2.grade}');
}
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