Daftar Isi:

Bagaimana kita bisa membuat kelas tidak berubah di Jawa dengan bidang tanggal?
Bagaimana kita bisa membuat kelas tidak berubah di Jawa dengan bidang tanggal?

Video: Bagaimana kita bisa membuat kelas tidak berubah di Jawa dengan bidang tanggal?

Video: Bagaimana kita bisa membuat kelas tidak berubah di Jawa dengan bidang tanggal?
Video: Ular Kepala Manusia di Papua 2024, April
Anonim

Kami akan memahami apa arti pedoman ini sebenarnya dengan membuat kelas yang tidak dapat diubah dengan objek yang dapat diubah dengan bidang Tanggal

  1. Jangan berikan metode "penyetel" - metode yang memodifikasi bidang atau benda dirujuk oleh bidang .
  2. Membuat semua bidang akhir dan pribadi.
  3. Jangan izinkan subkelas menimpa metode.

Di sini, bagaimana kita bisa membuat kelas tidak berubah di Jawa?

Kelas Abadi di Jawa

  1. Nyatakan kelas sebagai final sehingga tidak dapat diperpanjang.
  2. Jadikan semua bidang pribadi sehingga akses langsung tidak diizinkan.
  3. Jangan berikan metode penyetel untuk variabel.
  4. Jadikan semua bidang yang bisa berubah menjadi final sehingga nilainya hanya dapat ditetapkan satu kali.
  5. Inisialisasi semua bidang melalui konstruktor yang melakukan penyalinan dalam.

Selanjutnya, pertanyaannya adalah, apa gunanya kelas yang tidak dapat diubah di Jawa? Kelas yang tidak berubah berarti bahwa sekali suatu objek dibuat, kita tidak dapat mengubah isinya. Di dalam Jawa , semua bungkusnya kelas (seperti Integer, Boolean, Byte, Short) dan String kelas adalah kekal . Kita bisa membuat sendiri kelas yang tidak berubah demikian juga.

Orang-orang juga bertanya, apakah kelas Date tidak dapat diubah di Jawa?

Tanggal tidak kekal , kita perlu membuat salinan defensif Jawa . util. Tanggal bidang sambil mengembalikan referensi ke variabel instan ini. Mari kita membuat orang hipotetis kelas yang memiliki nama dan dob sebagai satu-satunya dua anggota.

Bagaimana kita bisa membuat objek tidak berubah?

Untuk membuat objek tidak berubah, Anda harus melakukan langkah-langkah ini:

  1. Jangan gunakan metode apa pun, yang dapat mengubah bidang kelas Anda. Misalnya jangan gunakan Setter.
  2. Hindari menggunakan bidang non-final publik. Jika bidang Anda bersifat publik maka Anda harus mendeklarasikannya sebagai final dan menginisialisasinya di konstruktor atau langsung di baris deklarasi.

Direkomendasikan: