Java - Atribut Kelas

Halo di sana, para penyihir Java masa depan! Hari ini, kita akan memulakan perjalanan yang menarik ke atas dunia Atribut Kelas Java. Jangan khawatir jika anda baru di atas pemrograman; saya akan menjadi pemandu anda yang mesra, dan kita akan menjelajah topik ini langkah demi langkah. Jadi, rakamkan papan kekunci anda (keyboard) virtual, dan mari kita melompat masuk!

Java - Class Attributes

Apa Itu Atribut Kelas?

Sebelum kita melompat ke atas kod, mari kita fahami apa itu atribut kelas. Bayangkan anda membuat haiwan maya di atas permainan. Haiwan anda akan memiliki beberapa ciri-ciri seperti nama, umur, dan warna. Dalam Java, ciri-ciri ini dipanggil atribut atau medan kelas.

Atribut kelas adalah pembolehubah yang milik kepada kelas dan mendefinisikan sifat objek yang dicipta daripada kelas tersebut. Ia seperti DNA bagi objek anda, mendefinisikan apa yang membuat setiap objek unik.

Membuat (Mengisytiharkan) Atribut Kelas Java

Mari kita mula dengan membuat kelas yang ringkas bagi haiwan maya kita:

public class VirtualPet {
String name;
int age;
String color;
}

Dalam contoh ini, kita telah mengisytiharkan tiga atribut: name, age, dan color. Atribut ini akan tersedia bagi semua objek yang dicipta daripada kelas VirtualPet.

Penyahpijat Akses

Anda mungkin telah mengesan bahawa kita tidak menggunakan kata kunci khas sebelum atribut kita. Dalam Java, kita boleh menggunakan penyahpijat akses untuk mengawal kebolehlihatan atribut kita. Mari kita ubah kelas kita:

public class VirtualPet {
public String name;
private int age;
protected String color;
}

Berikut adalah apa yang penyahpijat ini bermakna:

  • public: Atribut boleh diakses daripada mana-mana kelas lain.
  • private: Atribut hanya boleh diakses di atas kelas yang sama.
  • protected: Atribut boleh diakses di atas rakaman yang sama dan subkelas.

Jika kita tidak menyatakan penyahpijat, ia default kepada package-private, iaitu boleh diakses di atas rakaman yang sama.

Mengakses Atribut Kelas Java

Sekarang yang kita telah memiliki atribut kita, mari kita lihat bagaimana kita boleh mengakses mereka. Kita akan membuat method main untuk mempersembahkan ini:

public class VirtualPetDemo {
public static void main(String[] args) {
VirtualPet myPet = new VirtualPet();
myPet.name = "Fluffy";
System.out.println("Nama haiwan saya adalah " + myPet.name);
}
}

Apabila anda menjalankan kod ini, ia akan mengeluarkan: "Nama haiwan saya adalah Fluffy"

Perhatikan bagaimana kita menggunakan notasi titik (myPet.name) untuk mengakses atribut name objek myPet kita.

Mengubahsuai Atribut Kelas Java

Mengubahsuai atribut adalah sama mudah seperti mengakses mereka. Mari kita ubah nama haiwan kita:

public class VirtualPetDemo {
public static void main(String[] args) {
VirtualPet myPet = new VirtualPet();
myPet.name = "Fluffy";
System.out.println("Nama haiwan saya adalah " + myPet.name);

myPet.name = "Whiskers";
System.out.println("Nama baru haiwan saya adalah " + myPet.name);
}
}

Ini akan mengeluarkan:

Nama haiwan saya adalah Fluffy
Nama baru haiwan saya adalah Whiskers

Membuat Atribut Kelas Java Hanya Boleh Dibaca

Bila-bila masa, kita mahu menghalang atribut daripada diubahsuai selepas mereka diatur pertama kali. Kita boleh capai ini dengan menggunakan kata kunci final:

public class VirtualPet {
public final String species;
public String name;
private int age;
protected String color;

public VirtualPet(String species) {
this.species = species;
}
}

Dalam kelas yang dikemaskini ini, kita telah menambah atribut species yang tidak boleh diubah selepas diatur di atas konstruktor. Mari lihat ia di atas tindakan:

public class VirtualPetDemo {
public static void main(String[] args) {
VirtualPet myPet = new VirtualPet("Cat");
System.out.println("Haiwan saya adalah sebuah " + myPet.species);

// Ini akan menyebabkan ralat pengkompilan:
// myPet.species = "Dog";
}
}

Praktis Terbaik bagi Atribut Kelas

  1. Penyelubungan: Biasanya adalah praktis baik untuk membuat atribut anda private dan menyediakan method public untuk mengakses dan mengubahsuai mereka. Ini dikenali sebagai penyelubungan.
public class VirtualPet {
private String name;
private int age;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
if (age > 0) {
this.age = age;
}
}
}
  1. Penginitialisasi: Sentiasa inisialisasi atribut anda, sama ada apabila mengisytiharkannya atau di atas konstruktor.
public class VirtualPet {
private String name = "Unnamed";
private int age = 0;

public VirtualPet(String name, int age) {
this.name = name;
this.age = age;
}
}
  1. Gunakan nama yang bermakna: Pilih nama atribut yang menggambarkan dengan jelas apa yang mereka wakili.

Penutup

Dan itu adalah, rakan-rakan! Kita telah melカバikan dasar-dasar Atribut Kelas Java. Ingat, atribut adalah seperti ciri-ciri bagi objek anda. Mereka boleh menjadi public, private, atau protected, dan anda bahkan boleh membuat mereka hanya boleh dibaca menggunakan kata kunci final.

Apabila anda teruskan perjalanan Java anda, anda akanjumpa bahawa menguasai atribut kelas adalah penting untuk membuat kod yang baik struktur dan dapat dipelihara. Teruskan untuk berlatih, dan tidak lama lagi anda akan dapat membuat objek kompleks dengan mudah!

Sebelum kita bersurai, di sini adalah satu rakam untuk mengingat pelajaran ini: Mengapa atribut Java merasa sepi? Kerana ia private dan tidak seorangpun dapat mengaksesnya!

Selamat coding, dan may your attributes always be well-encapsulated!

Credits: Image by storyset