Medan Kelas, Medan # Peribadi, Ahli Static
Cipta kelas dengan medan awam, sembunyikan data menggunakan medan # peribadi dan tambahkan sifat/kaedah static.
Medan Kelas, Medan # Peribadi, Ahli Static ialah pelajaran Akademi JavaScript percuma di CoddyKit. Ini ialah pelajaran 1 daripada 3. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Akademi JavaScript, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Akademi JavaScript merangkumi sejumlah 3 pelajaran.
Mengapa kelas?
Matlamat: Bina kelas yang small dan jelas.
- Medan awam dan kaedah
- Medan #private untuk keadaan tersembunyi
- Sifat dan kaedah static untuk pembantu peringkat kelas
- Pastikan contoh kecil dan mudah dibaca

Medan awam & pembina
Cipta kelas dengan medan awam dan kaedah kecil; pastikan logiknya mudah untuk pemula.
// Public fields and a simple method
class Counter {
// public field with default
value = 0;
constructor(start) {
// use a default if start is not provided
this.value = Number.isFinite(start) ? start : 0;
}
inc() {
this.value = this.value + 1;
}
}
const c1 = new Counter(2);
c1.inc();
console.log("value:", c1.value); // 3

Medan #private
Medan #private dikuatkuasakan oleh bahasa dan hanya boleh digunakan dalam badan kelas. Dedahkan kaedah bacaan jika diperlukan.
// Private # fields hide internal state
class SafeCounter {
// private field (only inside the class)
#value = 0;
constructor(start) {
this.#value = Number.isFinite(start) ? start : 0;
}
inc() { this.#value = this.#value + 1; }
getValue() { return this.#value; } // expose via method
}
const sc = new SafeCounter(5);
sc.inc();
console.log("safe value:", sc.getValue());
// External access fails (uncommenting the next line would throw):
// console.log(sc.#value);

Pengambil untuk bacaan selamat
Pengambil boleh memulangkan nilai terbitan atau disahkan sambil mengekalkan medan sebagai peribadi.
// Getters provide read-only views; simple guard logic
class User {
#name = "Anonymous";
constructor(name) {
if (typeof name === "string" && name.trim().length > 0) {
this.#name = name.trim();
}
}
get name() {
return this.#name;
}
}
const u = new User(" Ayla ");
console.log("name:", u.name);

Ahli static
Ahli static dipanggil pada kelas (contohnya, MathHelp.circleArea()), bukan pada objek tika.
// Static = belongs to the class, not to instances
class MathHelp {
static PI = 3.14159;
static circleArea(r) {
if (!(typeof r === "number" && r >= 0)) return 0;
return MathHelp.PI * r * r;
}
}
console.log("PI:", MathHelp.PI);
console.log("area r=2:", MathHelp.circleArea(2));
// Instances do not have the static members:
const mh = new MathHelp();
console.log("instance has PI?", "PI" in mh); // false

Amalan mesra pemula
Petua:
- Utamakan kelas yang small dengan sedikit kaedah yang jelas.
- Gunakan #private untuk privasi sebenar; garis bawah hanyalah konvensyen penamaan.
- Letakkan pemalar atau utiliti pada ahli static.
- Dedahkan kaedah bacaan minimum (pengambil) jika anda memerlukan capaian dari luar.

Kuiz asas medan #private
Semakan ringkas: Medan #private.

Ulang kaji
Ulang kaji: Gunakan medan awam untuk keadaan mudah, #private untuk menyembunyikan bahagian dalaman dan static untuk pembantu peringkat kelas. Pastikan setiap kelas kecil dan mudah dibaca.

Pelajari JavaScript dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 59
- Pelajaran
- 200
Soalan Lazim
Adakah pelajaran “Medan Kelas, Medan # Peribadi, Ahli Static” percuma?
Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Akademi JavaScript, termasuk “Medan Kelas, Medan # Peribadi, Ahli Static”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Akademi JavaScript merangkumi sejumlah 3 pelajaran.
Apakah yang akan saya pelajari dalam “Medan Kelas, Medan # Peribadi, Ahli Static”?
Cipta kelas dengan medan awam, sembunyikan data menggunakan medan # peribadi dan tambahkan sifat/kaedah static. Anda berlatih Akademi JavaScript menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Akademi JavaScript?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Akademi JavaScript di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 3.
Berapa lamakah pelajaran “Medan Kelas, Medan # Peribadi, Ahli Static” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Akademi JavaScript ini?
Ya. Setiap pelajaran Akademi JavaScript menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Medan Kelas, Medan # Peribadi, Ahli Static
- Pewarisan, super dan masa untuk memilih gubahan
- Campuran (Pengenalan) — guna semula mudah tanpa hierarki mendalam