مقدمة إلى SerialVersionuid
عندما يتعلق الأمر بنقل الكائنات أثناء إعادة البرمجة ، سنقوم بتبني تكنولوجيا التسلسل ، من خلال التسلسل ، عملية تحويل معلومات الحالة للكائن إلى نموذج يمكن تخزينه أو نقله. في Java ، يمكننا تسلسل الأشياء عن طريق تنفيذ الواجهة التسلسلية ، و SerialVersionuid هو دور لا غنى عنه في آلية التسلسل Java. يمكننا التحقق من تناسق الإصدار من خلال الحكم على SerialVersionuid للفصل في وقت التشغيل. عند هجره ، سوف يقارن JVM المسلسل في تيار البايت الذي تم تمريره مع التسلسل التسلسلي للكيان المقابل المحلي (الفئة). إذا تم اعتبار الشيء نفسه متسقًا ، فقد يتم إلغاء التخلص منه ، وإلا فإن استثناء مع إصدارات التسلسل غير المتسقة سيحدث.
عندما نستخدم Intellij Idea لكتابة الفصول وتنفيذ واجهة قابلة للتسلسل (تسلسل) ، قد نواجه مثل هذه المشكلة ، أي:
لا يمكن إنشاء SerialVersionuid تلقائيًا .
serialVersionUID هو مجال آخر مهم للغاية ، لأن آلية تسلسل Java تتحقق من serialVersionUID للفئة في وقت التشغيل للتحقق من اتساق الإصدار. عند هجره ، سوف يقارن JVM serialVersionUID في تيار البايت الذي تم تمريره مع serialVersionUID للكيان المقابل المحلي (الفئة). إذا تم اعتبار الشيء نفسه متسقًا ، فقد يتم إلغاء التخلص منه ، وإلا فإن استثناء مع إصدارات التسلسل غير المتسقة سيحدث.
بشكل عام ، هناك طريقتان لتحديد serialVersionUID ، وهما:
1L ، وتحديداً private static final long serialVersionUID = 1L;64 Pit استنادًا إلى اسم الفصل واسم الواجهة وأساليب الأعضاء والسمات ، على سبيل المثال ، private static final long serialVersionUID = XXXL;هناك غرضان رئيسيان للتسلسل لفصول Java ، وهما:
هنا ، دعونا نلقي نظرة على كيفية استخدام Idea Intellij لإنشاء serialVersionUID تلقائيًا.
الخطوة 1: قم بتثبيت البرنامج الإضافي
كما هو موضح في الشكل أعلاه ، انقر فوق Preferences لإدخال الواجهة التالية:
هنا ، حدد Plugins وابحث عن GenerateSerialVersionUID . إذا لم تجد هذا البرنامج المساعد ، يمكنك النقر فوق Search in repositories للبحث:
كما هو موضح في الصورة أعلاه ، انقر فوق install للتثبيت لتثبيت هذا المكون الإضافي.
الخطوة 2: تعيين وظيفة عمليات التفتيش
كما هو موضح في الشكل أعلاه ، أدخل Default Settings ، في صفحة إعدادات Inspections ، تحقق من Serializable class without 'serialVersionUID' ، ويمكنك أيضًا تعيين مستويات سريعة في Severity ، مثل Warning ، Error ، وما إلى ذلك ، والتي تتخلف عن Warning . يوصى أيضًا بتحديد مطالبات مستوى Warning .
كما هو موضح في الشكل أعلاه ، قم بإنشاء فئة وتنفيذ الواجهة Serializable ، ثم اضغط على alt + Enter لتلقي موجه ، وحدد SerialVersionUID :
كما هو موضح في الشكل أعلاه ، فقد استخدمنا فكرة intellij بوضوح لإنشاء serialVersionUID تلقائيًا!
ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.