تحلل هذه المقالة استخدام الكلمات الرئيسية العابرة في Java. شاركه للرجوع إليه. التحليل المحدد هو كما يلي:
تتمتع Java بميزة التسلسل. يمكن أن يسهل هذا إلى حد كبير بعض العمليات على الشبكة ، ولكن في نفس الوقت ، لأنه يتضمن مشكلات أمنية ، لا يهدف إلى تخزين كل شيء في الفصل (لأنه بهذه الطريقة ، يمكن للآخرين معرفة المحتوى في الفصل من خلال التسلسل). يمكننا استخدام الكلمة الرئيسية عابرة ، مما يعني مؤقتًا ، أي أنه لن يتم تسلسله محليًا مع الفصل ، لذلك بعد الاستعادة ، لم تعد المتغيرات المحددة بواسطة هذه الكلمة الرئيسية موجودة.
عادةً ما تتطلب البرامج التي نكتبها معلومات محددة لاستخدامها من قبل برنامج واحد أو في نفس البرنامج. الدعم للتسلسل الكائن. ومع ذلك ، فمن المحتمل أن لا تحتاج إلى حفظ جميع المجالات. .
أولاً ، دعونا نلقي نظرة على بعض كود التسلسل Java:
الفئة العامة تنفذ java.io.serializable ) التاريخ: " + loggingDate.ToString () +"/n كلمة المرور: " + password ؛}}
الآن نقوم بإنشاء مثيل لهذه الفئة ، وقم بتسلسله ، ثم اكتب هذا الكائن المسلسل مثل القرص.
LoggingInfo loginfo = LoggingInfo الجديد (Mike "،" Mechanics ") ؛ (loginfo) ؛ ؛
إذا قمنا بتشغيل هذا الرمز ، فسوف نلاحظ أن الكائن القراءة (إزالة التخصيص)) من قرص يطبع كلمة المرور على أنها "غير تعيين". هذه هي النتيجة الصحيحة التي نتوقعها عندما نحدد مجال PWD على أنه عابر.
الآن ، دعونا نلقي نظرة على المشكلات المحتملة التي يمكن أن تنشأ من المعالجة المهملة للمجالات العابرة. لنفترض أننا نقوم بتعديل تعريف الفئة ونقدم قيمة افتراضية للمجال العابر ، فإن الكود هو كما يلي:
Public Classingloggingists java.io.serializable {// نفسه كما و}} الآن ، إذا مررنا بمثابة من GuestloggingInfo ، واكتبها إلى القرص ، وقراءتها من القرص ، فلا نزال نرى كلمة مرور كائن ReadPack على أنها "غير محددة".
عندما تتم قراءة مثيل للفصل من القرص ، لا يتم تنفيذ مُنشئ هذه الفئة بالفعل.
بدلاً من ذلك ، يتم تحميل حالة مستمرة لكائن من هذه الفئة ويتم تعيين هذه الحالة لكائن آخر من هذه الفئة.
آمل أن يكون هذا المقال مفيدًا لبرمجة Java للجميع.