آیا دو کلاس می توانند سریالVersionUID یکسان داشته باشند؟
آیا دو کلاس می توانند سریالVersionUID یکسان داشته باشند؟

تصویری: آیا دو کلاس می توانند سریالVersionUID یکسان داشته باشند؟

تصویری: آیا دو کلاس می توانند سریالVersionUID یکسان داشته باشند؟
تصویری: Arthur Schopenhauer / Haklı Çıkma Sanatı (Müzikli Kitap) 2024, نوامبر
Anonim

بله، این امکان وجود دارد دو ناهمسان کلاس ها می توانند داشته باشند را همان serialVersionUID ارزش. اما ترجیح می دهید برای هر کدام از یک مورد منحصر به فرد استفاده کنید کلاس . همچنین از 8 تا 10 رقم طولانی تر به جای 1 به عنوان مقدار استفاده کنید.

در نتیجه، serialVersionUID چیست؟

به زبان ساده، serialVersionUID یک شناسه منحصر به فرد برای کلاس های Serializable است. این مورد در طول سریال‌زدایی یک شی مورد استفاده قرار می‌گیرد تا اطمینان حاصل شود که یک کلاس بارگذاری شده با شی سریال‌سازی شده سازگار است.

به همین ترتیب، استفاده از serialVersionUID 1l چیست؟ را serialVersionUID یک شناسه نسخه جهانی برای یک کلاس Serializable است. سریال زدایی استفاده می کند این عدد برای اطمینان از اینکه یک کلاس بارگذاری شده دقیقاً با یک شی سریالی مطابقت دارد. اگر مطابقت پیدا نشد، یک InvalidClassException پرتاب می شود.

به طور مشابه، پرسیده می شود که آیا به serialVersionUID نیاز است؟

پیشفرض serialVersionUID محاسبات به جزئیات کلاس بسیار حساس است که ممکن است بسته به پیاده سازی کامپایلر متفاوت باشد می توان بنابراین منجر به InvalidClassException های غیرمنتظره در طول deserialization می شود. بنابراین باید اعلام کنید serialVersionUID زیرا به ما کنترل بیشتری می دهد.

نقش serialVersionUID در فرآیند سریال سازی چیست؟

در حین سریال سازی ، زمان اجرا جاوا یک شماره نسخه را با هر کدام مرتبط می کند قابل سریال سازی کلاس این شماره تماس گرفت serialVersionUID ، که در حین deserialization استفاده می شود تا تأیید شود که فرستنده و گیرنده a سریالی شده شی دارای کلاس هایی برای آن شی است که با توجه به آن سازگار است سریال سازی.

توصیه شده: