Mundarija:

Java-da Date ob'ekti o'zgaruvchanmi?
Java-da Date ob'ekti o'zgaruvchanmi?

Video: Java-da Date ob'ekti o'zgaruvchanmi?

Video: Java-da Date ob'ekti o'zgaruvchanmi?
Video: Ek Jibone Eto Prem Pabo Kothay-Shahid Feat Shuvomita HD Video Song 2024, Noyabr
Anonim

A o'zgaruvchan ob'ekt oddiygina bir ob'ekt qurilishdan keyin uning holatini o'zgartirishi mumkin. Masalan, StringBuilder va Sana bor o'zgaruvchan ob'ektlar , String va Integer esa o'zgarmasdir ob'ektlar . Bir sinfda a bo'lishi mumkin o'zgaruvchan ob'ekt maydon sifatida.

Xuddi shunday, Java-da Date sinfi o'zgarmasmi?

Sana emas o'zgarmas ning mudofaa nusxasini yaratishimiz kerak java . util. Sana ushbu misol o'zgaruvchisiga havolani qaytarish paytida maydon. Keling, faraziy odamni yarataylik sinf unda faqat ikkita a'zo sifatida nom va dob mavjud.

Keyinchalik savol tug'iladi: Java-da o'zgarmas ob'ekt nima? O'zgarmas ob'ektlar bor ob'ektlar bu o'zgarmaydi. Siz ularni yaratasiz, keyin ularni o'zgartira olmaysiz. A Java o'zgarmas ob'ekti uning barcha maydonlari ichki, shaxsiy yakuniy maydonlar bo'lishi kerak. U hech qanday sozlashni amalga oshirmasligi kerak. Har bir maydon uchun qiymat oladigan konstruktor kerak.

Java'da ob'ektlar o'zgaruvchanmi?

O'zgarmas ob'ektlar oddiy ob'ektlar kimning davlati ( ob'ektlar ma'lumotlar) qurilishdan keyin o'zgarmaydi. Misollar o'zgarmas ob'ektlar JDK dan String va Integer kiradi. O'zgaruvchan ob'ektlar o'zgartirilishi mumkin bo'lgan maydonlar mavjud, o'zgarmas ob'ektlar dan keyin o'zgartirilishi mumkin bo'lgan maydonlar mavjud emas ob'ekt yaratilgan.

Java'da ob'ektni qanday qilib o'zgaruvchan qilish mumkin?

Java-da o'zgarmas sinf

  1. Sinfni yakuniy deb e'lon qiling, shuning uchun uni uzaytirib bo'lmaydi.
  2. To'g'ridan-to'g'ri kirishga ruxsat berilmasligi uchun barcha maydonlarni shaxsiy qilib qo'ying.
  3. O'zgaruvchilar uchun sozlash usullarini taqdim qilmang.
  4. Barcha o'zgaruvchan maydonlarni yakuniy qiling, shunda uning qiymati faqat bir marta tayinlanishi mumkin.
  5. Chuqur nusxa ko'chirishni amalga oshiradigan konstruktor orqali barcha maydonlarni ishga tushiring.

Tavsiya: