Buat Variabel Konstan Jawa (Kata Kunci Statis / Final)

Konstanta adalah a variabel yang nilainya tidak dapat berubah setelah ditetapkan. Jawa tidak memiliki dukungan bawaan untuk konstanta, tetapi pengubah variabel statis dan terakhir dapat digunakan untuk membuatnya secara efektif.

Konstanta dapat membuat program Anda lebih mudah dibaca dan dipahami oleh orang lain. Selain itu, konstanta di-cache oleh JVM serta aplikasi Anda, sehingga menggunakan konstanta dapat meningkatkan kinerja.

Pengubah Statis

Ini memungkinkan variabel untuk digunakan tanpa terlebih dahulu membuat instance dari kelas; anggota kelas statis dikaitkan dengan kelas itu sendiri, bukan objek. Semua instance kelas berbagi salinan variabel yang sama.

Ini berarti bahwa aplikasi lain atau main () dapat dengan mudah menggunakannya.

Misalnya, kelas myClass berisi variabel statis days_in_week:

myClass kelas publik {
static int days_in_week = 7;
}

Karena variabel ini statis, dapat digunakan di tempat lain tanpa secara eksplisit membuat objek myClass:

kelas publik myOtherClass { 
static void main (String [] args) {
System.out.println (myClass.days_in_week);
}
}
instagram viewer

Pengubah akhir

Pengubah akhir berarti bahwa nilai variabel tidak dapat berubah. Setelah nilai diberikan, itu tidak dapat dipindahkan.

Tipe data primitif (mis., int, pendek, panjang, byte, char, float, double, boolean) dapat dibuat tidak berubah / tidak dapat diubah menggunakan pengubah akhir.

Bersama-sama, pengubah ini membuat variabel konstan.

int final statis DAYS_IN_WEEK = 7;

Perhatikan bahwa kami menyatakan DAYS_IN_WEEK dalam huruf kapital semua setelah kami menambahkan terakhir pengubah. Ini adalah praktik lama di antara programmer Java untuk mendefinisikan variabel konstan dalam semua huruf besar, serta untuk memisahkan kata-kata dengan garis bawah.

Java tidak memerlukan pemformatan ini tetapi membuatnya lebih mudah bagi siapa saja yang membaca kode untuk segera mengidentifikasi konstanta.

Masalah Potensial Dengan Variabel Konstan

Cara kata kunci terakhir bekerja di Jawa adalah bahwa penunjuk variabel ke nilai tidak dapat berubah. Mari kita ulangi itu: itu adalah pointer yang tidak dapat mengubah lokasi yang ditunjuknya.

Tidak ada jaminan bahwa objek yang direferensikan akan tetap sama, hanya saja variabel akan selalu memegang referensi ke objek yang sama. Jika objek yang direferensikan bisa berubah (mis. Memiliki bidang yang dapat diubah), maka variabel konstan dapat berisi nilai selain dari apa yang awalnya ditugaskan.