Getter dan Setter
Mengekspos properti terhitung dan terlindungi
Getter dan Setter adalah pelajaran Dart Academy gratis di CoddyKit. Ini adalah pelajaran 3 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.
Melampaui Bidang Biasa
Terkadang Anda menginginkan properti yang dihitung atau dilindungi. Dart menyediakan pengambil dan penyetel untuk mengatur cara suatu nilai dibaca dan ditulis.
Apa Itu Pengambil
Pengambil terlihat seperti bidang dari luar, tetapi menjalankan kode untuk menghasilkan nilainya. Gunakan kata kunci get untuk mendefinisikannya.
int get area => width * height;Pengambil Menghitung Nilai
Pengambil sangat cocok untuk nilai yang diturunkan dari bidang lain. Bacalah dengan notasi titik biasa, tanpa memerlukan tanda kurung.
class Box {
int w = 2, h = 3;
int get area => w * h;
}Memanggil Pengambil
Akses pengambil persis seperti bidang. Kode di dalamnya dijalankan setiap kali, sehingga nilainya selalu mencerminkan data terbaru.
var b = Box();
print(b.area); // 6Apa Itu Penyetel
Penyetel menjalankan kode ketika Anda menetapkan suatu nilai. Definisikan dengan kata kunci set dan satu parameter untuk menerima input.
set width(int value) {
_w = value;
}Penyetel Melindungi Input
Penyetel dapat memvalidasi sebelum menyimpan. Tolak data yang tidak valid, batasi rentang, atau catat perubahan tepat di dalam penetapan nilai.
set age(int v) {
if (v >= 0) _age = v;
}Bidang Pendukung Privat
Nama yang diawali garis bawah bersifat privat bagi pustaka. Penyetel sering melindungi bidang pendukung privat seperti _age.
int _age = 0;
int get age => _age;Memanggil Penyetel
Tetapkan nilai ke penyetel seperti ke bidang biasa menggunakan tanda sama dengan. Dart mengarahkan penetapan tersebut melalui kode perlindungan Anda.
var p = Person();
p.age = 25;Pengambil Tanpa Penyetel
Tentukan hanya pengambil untuk membuat properti hanya-baca. Kode luar dapat membacanya, tetapi tidak pernah dapat menetapkan nilai ke dalamnya.
String get fullName => "$first $last";Mengapa Pengambil dan Penyetel
Keduanya memungkinkan Anda mengubah penyimpanan internal nantinya tanpa merusak kode pemanggil. Properti publik tetap sama, sementara logikanya tersembunyi di balik properti tersebut. 🔐
Contoh Properti Komputasi
Pengambil sangat berguna untuk pemformatan. Gabungkan beberapa bidang menjadi string yang mudah dipahami dan dapat dibaca pemanggil seperti properti biasa.
String get label => "$name: $score pts";Pemeriksaan Singkat
Anda ingin membuat properti yang dapat dibaca orang lain, tetapi tidak pernah dapat diberi nilai. Apa yang harus Anda definisikan?
Rangkuman: Pengambil dan Penyetel
Anda telah mempelajari bahwa pengambil menghitung dan menyediakan nilai, penyetel mengamankan pemberian nilai, dan keduanya bersama-sama menyembunyikan detail internal dengan rapi. 🎉
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Getter dan Setter” gratis?
Ya — teks lengkap “Getter dan Setter” 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 “Getter dan Setter”?
Mengekspos properti terhitung dan terlindungi 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 3 dari 4.
Berapa lama pelajaran “Getter dan Setter” 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
- Mendefinisikan Class dengan Field
- Metode Instance dan this
- Getter dan Setter
- Anggota Static dan Konstanta Class