كلمة رئيسية عابرة في جافا: ما هي وكيف تعمل؟

نشرت: 2022-03-06

مثل جميع لغات البرمجة الأخرى ، تحتوي لغة برمجة Java على قائمة بالكلمات المحجوزة التي لها معنى محدد. تُعرف هذه المجموعة المكونة من 52 كلمة محجوزة بواسطة Java بالكلمات الأساسية. نظرًا لأن لها معنى محددًا مسبقًا ، لا يمكن للمبرمجين استخدام الكلمات الأساسية لتسمية فئاتهم وكائناتهم ومتغيراتهم ومعرفاتهم الأخرى. واحدة من هذه الكلمات الرئيسية الـ 52 هي الكلمة الرئيسية العابرة - والتي ستكون محور مدونتنا!

جدول المحتويات

فهم الكلمة الرئيسية العابرة في جافا

يعد Transient أحد أكثر المعدلات المفيدة الموجودة في لغة برمجة Java. يأتي الدور الأساسي للكلمة الرئيسية المؤقتة في حالات التسلسل. يمكن تطبيق المُعدِّل العابر على أعضاء المجال في الفصل لإيقاف تشغيل التسلسل على هؤلاء الأعضاء المحددين.

ببساطة ، يمكن للمبرمج استخدام الكلمة الأساسية العابرة في Java لتجنب التسلسل. إذا تم تعريف أي كائن معين لأي بنية بيانات على أنه عابر بواسطة المبرمج ، فلن يتم إجراء تسلسل له. نتيجة لذلك ، يمكنك استخدام الكلمة الأساسية العابرة للإشارة إلى JVM (Java Virtual Machine) أن المتغير العابر الخاص بك لن يكون جزءًا من أي حالة ثابتة للكائن.

دعنا نحاول فهم طريقة عمل الكلمة الأساسية المؤقتة في Java باستخدام مثال أساسي للغاية. أولاً ، سننشئ فئة Address ونحدد ثلاث سمات للفئة - streetName و areaName و houseNumber. سنبقيها عابرة لأننا لا نريد تخزين أو حفظ السمة الثالثة - houseNumber.

فئة العنوان تنفذ Serializable

{

String streetName الخاص ؛

اسم منطقة السلسلة الخاصة ؛

منزل سلسلة عابر خاص ؛

// حاصلون وخطباء

}

الآن دعنا نسلسل مثيل لفئة العنوان.

حاول {

ObjectOutputStream oos = كائن جديد ObjectOutputStream (ملف جديد FileOutputStream (“addressinfo.ser”))؛

العنوان أ = عنوان جديد () ؛

a.setstreetName (“MIG”) ؛

a.setareaName ("Vikas Nagar") ؛

emp.sethouseNumber ("110") ؛

// تسلسل الكائن

oos.writeObject (أ) ؛

oos.close () ؛

} catch (استثناء هـ)

{

System.out.println (هـ) ؛

}

إذا كان الكود الخاص بنا يعمل بشكل صحيح ، فلن يتم حفظ معلومات "houseNumber" منذ أن حددناها على أنها عابرة. الآن ، سنحاول إلغاء تسلسلها مرة أخرى إلى الكائن الأصلي ومعرفة ما إذا تم حفظ المعلومات أم لا.

حاول {

ObjectInputStream o = new ObjectInputStream (new FileInputStream (“addressinfo.ser”))؛

// اقرأ الكائن مرة أخرى

العنوان readAddressInfo = (العنوان) o.readObject () ؛

System.out.println (readAddressInfo.getstreetName ()) ؛

System.out.println (readAddressInfo.getareaName ()) ؛

System.out.println (readAddressInfo.gethouseNumber ()) ؛

o.close () ؛

} catch (استثناء هـ)

{

System.out.println (هـ) ؛

}

إذا قمت بتشغيل الجزء أعلاه من برنامج Java ، فستتلقى الإخراج التالي:

MIG

فيكاس ناجار

باطل

كما ترى ، لم يتم حفظ معلومات "houseNumber" في حالة دائمة بسبب التسلسل ، ولهذا السبب نتلقى القيمة "null" كمخرج. هذا هو بالضبط سبب استخدام الكلمة الأساسية العابرة - لتخزين القيم في متغيرات بطريقة ليست دائمة ولكنها عابرة.

حالات الاستخدام للكلمة الرئيسية "المؤقتة" في جافا

الآن بعد أن فهمت الكلمة الرئيسية العابرة وماذا تفعل ، فإن السؤال المنطقي التالي الذي يطرح نفسه هو - متى نستخدم الكلمة الأساسية المؤقتة؟

دعنا نوسع معرفتنا حول الكلمة الرئيسية المؤقتة من خلال النظر بعمق في بعض المواقف التي قد تستفيد فيها من استخدام الكلمات الرئيسية المؤقتة.

فيما يلي بعض حالات الاستخدام الشائعة التي يجب عليك وضعها في الاعتبار:

  • تكون حالة الاستخدام الأولى للكلمة الأساسية المؤقتة أثناء المواقف التي قد يكون لديك فيها حقول بيانات إما محسوبة أو مشتقة من بعض الحقول الأخرى داخل مثيل الفئة. نتيجة لذلك ، يجب حساب هذه الحقول برمجيًا ، وتعتمد على القيم الأخرى. لهذا السبب ، بدلاً من وجود مثل هذه الحقول المستمرة ، يمكن أن تكون غير متسلسلة باستخدام الكلمة الأساسية العابرة. يمكن أن تتضمن الأمثلة على هذه القيم المؤقتة المحسوبة من الأشكال الأخرى القيم المستندة إلى الطابع الزمني ، والقيم القائمة على النسب المئوية ، وما إلى ذلك. في جميع هذه الحالات ، تقوم بحساب قيمة متغير بناءً على القيم الموجودة حاليًا.
  • يمكن أن تكون حالة الاستخدام المهمة الأخرى عندما تعمل مع أي نوع من المعلومات الآمنة التي لا ينبغي ، بأي حال من الأحوال ، أن يتم تسريبها خارج JVM ، ومن ثم يمكن أن تكون غير متسلسلة باستخدام الكلمة الأساسية المؤقتة.
  • يمكن استخدام الحقول التي لم يتم وضع علامة "قابلة للتسلسل" داخل Java Development Kit مع كلمة أساسية عابرة. الشيء المهم الذي يجب ملاحظته هنا هو أن جميع فئات Java التي لا تنفذ الواجهة القابلة للتسلسل لا يمكن إجراء تسلسل لها نظرًا لعدم الإشارة إليها ضمن أي فئة قابلة للتسلسل. نتيجة لذلك ، قد يؤدي ذلك إلى إلقاء "java.io.NotSerializableException" إذا لم يتم وضع علامة "عابر" قبل إجراء تسلسل للفئة الرئيسية.
  • وأخيرًا ، هناك بعض المناسبات التي لا يكون فيها من المنطقي إجراء تسلسل لبعض الحقول. على سبيل المثال ، إذا قمت بإضافة مرجع مسجل في التعليمات البرمجية الخاصة بك ، فلن ترغب في إجراء تسلسل لهذه المعلومات. يجب عليك إجراء تسلسل للمعلومات التي تمثل حالة مثيل. من ناحية أخرى ، لا تمثل المسجلات أي دولة ، لذلك لا فائدة من إجراء تسلسل لها. وبالتالي ، يجب استخدامها مع الكلمة الأساسية العابرة.

ختاما

حالات الاستخدام التي تمت مناقشتها أعلاه ليست شاملة بأي حال من الأحوال. جرب الكلمة الأساسية المؤقتة وتوصل إلى حالات الاستخدام الخاصة بك. بعد كل شيء ، يتم إنشاء الكلمات الرئيسية للمبرمجين ، وستكون قادرًا على الاستفادة من معظم الكلمات الرئيسية فقط عندما تعرف كيف تعمل وماذا تعني.

مع ذلك ، وصلنا إلى نهاية هذه المدونة حول الكلمات الرئيسية المؤقتة في Java. هذا هو أحد المفاهيم التمهيدية التي يجب أن تتطلع إلى إتقانها من أجل النمو في حياتك المهنية في تطوير البرمجيات. مجال تطوير البرامج ديناميكي للغاية ولكنه مرحب به للغاية إذا كنت مستعدًا لسحب جواربك وبذل قصارى جهدك!

في upGrad ، قمنا بتوجيه وإرشاد الطلاب من جميع أنحاء العالم ، الذين ينتمون إلى مجالات مختلفة وساعدهم على بدء حياتهم المهنية في تطوير البرمجيات. تم تصميم PGP الخاص بنا في تطوير البرمجيات - التخصص في تطوير المكدس الكامل للمتخصصين الجدد وذوي الخبرة. إلى جانب المعلمين الخبراء والمواد التعليمية الحديثة ، يمكنك أيضًا الحصول على أقران موهوبين ودعم شامل للتوظيف وتوجيه فردي مع قادة الصناعة. لذا تحقق من محتوى الدورة وسجّل نفسك قريبًا!

1. ما هي الكلمة الأساسية المؤقتة في جافا؟

يمكن استخدام الكلمات الأساسية العابرة في Java لتجنب تسلسل الكائن. باستخدام كلمات رئيسية عابرة ، فإنك تضمن أن القيمة التي يحتفظ بها حقل معين لن تكون ثابتة.

2. يمكن استخدام الكلمة الأساسية العابرة مع أي عناصر في Java؟

يمكنك استخدام الكلمة الأساسية العابرة في Java لعدم إجراء تسلسل لفئة أو متغير أو كائن أو حقل.

3. كيف تختلف الكلمة الرئيسية العابرة والكلمات الرئيسية المتغيرة في Java؟

يتم استخدام الكلمة الأساسية العابرة لتجنب عملية التسلسل ، بينما يتم استخدام الكلمة الأساسية المتغيرة مع متغير بحيث لا يتم تخزينها في الذاكرة الرئيسية.