Ikki sinfda bir xil serialVersionUID bo'lishi mumkinmi?
Ikki sinfda bir xil serialVersionUID bo'lishi mumkinmi?

Video: Ikki sinfda bir xil serialVersionUID bo'lishi mumkinmi?

Video: Ikki sinfda bir xil serialVersionUID bo'lishi mumkinmi?
Video: 5 bilan tugaydigan ikki honali sonlarni TEZ ko’paytirish! 2024, Noyabr
Anonim

Ha, shunday bo'lishi mumkin ikki boshqacha sinflar bo'lishi mumkin the bir xil serialVersionUID qiymat. Lekin har biri uchun o'ziga xos birini ishlatishni afzal ko'ring sinf . Bundan tashqari, qiymat sifatida faqat 1 emas, 8 dan 10 gacha uzunroq bir raqamdan foydalaning.

Shunday qilib, serialVersionUID nima?

Oddiy qilib aytganda, serialVersionUID Serializable sinflar uchun noyob identifikatordir. Bu yuklangan sinfning ketma-ketlashtirilgan ob'ekt bilan mos kelishini ta'minlash uchun ob'ektni seriyadan chiqarish paytida ishlatiladi.

Xuddi shunday, serialVersionUID 1l dan qanday foydalanish kerak? The serialVersionUID Serializable sinfi uchun universal versiya identifikatoridir. Seriyadan chiqarish foydalanadi yuklangan sinf ketma-ketlashtirilgan ob'ektga to'liq mos kelishini ta'minlash uchun bu raqam. Hech qanday moslik topilmasa, InvalidClassException tashlanadi.

Xuddi shunday, serialVersionUID kerakmi?

standart serialVersionUID hisoblash kompilyator ilovalariga qarab farq qilishi mumkin bo'lgan sinf tafsilotlariga juda sezgir va mumkin Shunday qilib, seriyani bekor qilish paytida kutilmagan InvalidClassException s paydo bo'ladi. Shuning uchun siz e'lon qilishingiz kerak serialVersionUID chunki bu bizga ko'proq nazorat beradi.

Serializatsiya jarayonida serialVersionUID qanday rol o'ynaydi?

davomida ketma-ketlashtirish , java ish vaqti har biri bilan versiya raqamini bog'laydi seriyali bo'lishi mumkin sinf. Bu raqam qo'ng'iroq qildi serialVersionUID , a.ning jo'natuvchisi va qabul qiluvchisi ekanligini tekshirish uchun deserializatsiya paytida foydalaniladi seriallashtirilgan ob'ektda ushbu ob'ekt uchun mos keladigan sinflar yuklangan ketma-ketlashtirish.

Tavsiya: