الانتقال إلى المحتوى الرئيسي

التهيئة الافتراضية لمتغير محلي من النوع المرجعي في جافا

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

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

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

  1. باستخدام التهيئة الافتراضية في جافا
  2. ما هو التهيئة الافتراضية?
  3. المتغيرات المحلية في جافا
  4. أمثلة على تهيئة المتغيرات المحلية في جافا
  5. المتغيرات المحلية من النوع المرجعي
  6. دور التهيئة عند العمل مع المتغيرات المرجعية
  7. التهيئة الافتراضية للمتغيرات المرجعية
  8. كيف يعمل التهيئة الافتراضية?
  9. أمثلة على استخدام التهيئة الافتراضية
  10. سؤال وجواب
  11. ما هي القيم الافتراضية لمتغيرات نوع المرجع المحلي في جافا?
  12. ماذا يحدث إذا لم تقم بتهيئة متغير محلي من النوع المرجعي في جافا?
  13. هل من الممكن تعيين قيمة افتراضية مخصصة لمتغير نوع مرجع محلي في جافا?

باستخدام التهيئة الافتراضية في جافا

تحتوي لغة برمجة جافا على آلية تهيئة متغيرة افتراضية تقوم تلقائيا بتعيين القيمة الأولية لكل متغير. بالنسبة لمتغيرات النوع المرجعي مثل الكائنات والمصفوفات والسلاسل ، توفر التهيئة فارغة افتراضيا.

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

يمكن استخدام التهيئة الافتراضية ، على سبيل المثال ، عند الإعلان عن متغيرات الفئة أو المتغيرات المحلية في الأساليب. بالنسبة للمتغيرات المحلية ، تكون التهيئة الافتراضية مفيدة بشكل خاص ، حيث يمكن إنشاؤها داخل طريقة ولا تتطلب دائما تهيئة صريحة قبل الاستخدام.

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

// إعلان متغير فئة بدون تهيئة صريحة

فئة عامة ميكلاس {

سلسلة خاصة ميسترينغ ؛ / / باستخدام التهيئة الافتراضية ل

سلسلة قائمة مايليست الخاصة ؛ / / استخدام التهيئة الافتراضية لـ

قائمة ميكلاس العامة () {

// منشئ الفئة

}

الفراغ العام فو () {

// متغير محلي بدون تهيئة صريحة

إنت مينت;

// ...

}

}

في هذا المثال ، يتم تهيئة المتغيرات ميسترينغ و مايليست إلى نول افتراضيا ، لأنها مراجع. لا يتم تهيئة المتغير المحلي مينت ، وليس مرجعا ، بشكل افتراضي ويجب تهيئته بشكل صريح قبل الاستخدام.

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

ما هو التهيئة الافتراضية?

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

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

فيما يلي أنواع البيانات وقيمها الافتراضية في جافا:

نوع المتغيرالقيمة الافتراضية
بايت ، قصيرة ، كثافة العمليات ، طويلة0
تعويم ، مزدوج0.0
شار‘’
منطقيةخطأ
أي نوع من المتغيرات المرجعيةلاغية

التهيئة الافتراضية ملائمة في المواقف التي نحتاج فيها إلى استخدام المتغيرات دون الحاجة إلى تهيئتها بشكل صريح بقيمة. في الوقت نفسه ، ضع في اعتبارك إمكانية الحصول على نولبونتيركسيبتيون عند محاولة استخدام متغير غير مهيأ.

المتغيرات المحلية في جافا

في جافا ، تنقسم المتغيرات إلى عالمية ومحلية. يتم الإعلان عن المتغيرات المحلية داخل كتلة من التعليمات البرمجية وهي متاحة فقط داخل تلك الكتلة. لا يمكن استخدامها في كتل التعليمات البرمجية الأخرى.

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

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

أمثلة على تهيئة المتغيرات المحلية في جافا

نوع البياناتمثال على الإعلان والتهيئة
عدد صحيحعدد الباحث = 10;
رقم النقطة العائمةمزدوج بي = 3.14;
الرمزحرف شار = 'أ';
الخطاسم السلسلة = "جون";

من المهم أن تتذكر أن المتغيرات المحلية لها نطاق فقط داخل كتلة التعليمات البرمجية التي تم الإعلان عنها فيها. عند الخروج من كتلة التعليمات البرمجية ، يتم تدمير المتغير المحلي ويتم تحرير الذاكرة التي يشغلها.

المتغيرات المحلية من النوع المرجعي

هناك نوعان رئيسيان من المتغيرات في لغة برمجة جافا: البدائية والمرجعية. تمثل المتغيرات البدائية قيما بسيطة مثل الأرقام أو الرموز ، وتمثل المتغيرات المرجعية الكائنات أو المصفوفات.

المتغيرات المحلية هي متغيرات معلنة داخل طريقة أو كتلة رمز وتستخدم فقط داخل تلك الطريقة أو كتلة التعليمات البرمجية. يمكن أن تحتوي المتغيرات المحلية لنوع المرجع على مرجع لكائن أو قيمة فارغة.

عندما نعلن عن متغير محلي من نوع مرجعي بدون تهيئة صريحة ، فإنه يحصل تلقائيا على القيمة الفارغة. على سبيل المثال:

اسم السلسلة;

- هذا متغير محلي من النوع المرجعي ، والذي يتم تهيئته تلقائيا إلى فارغ.

إذا حاولنا استخدام متغير محلي غير مهيأ من نوع مرجع ، على سبيل المثال ، نحاول استدعاء طريقة على هذا المتغير ، سيحدث خطأ نولبونتيركسيبتيون. على سبيل المثال:

اسم السلسلة;

كثافة العمليات طول = اسم.طول(); // استدعاء طريقة على متغير غير مهيأ

لتجنب الخطأ نولبوانتيركسيبتيون ، فمن المستحسن دائما تهيئة صراحة المتغيرات المحلية من نوع المرجع قبل الاستخدام. على سبيل المثال:

اسم السلسلة = "جون";

كثافة العمليات طول = اسم.طول();

.

من المهم أن تتذكر أن المتغيرات المحلية لنوع المرجع تخزن فقط مرجعا للكائن ، وليس الكائن نفسه. لذلك ، عند تعيين متغير محلي إلى آخر ، يتم نسخ المرجع فقط ، وليس الكائن نفسه. على سبيل المثال:

اسم السلسلة 1 = "جون";

اسم السلسلة 2 = الاسم 1 ؛ / / نسخ الرابط

.

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

اسم السلسلة 1 = "جون";

اسم السلسلة 2 = الاسم 1 ؛ / / نسخ الرابط

الاسم 1 = "مايك" ؛ / / تغيير الكائن

النظام.خارج.برينتلن (الاسم 2) ؛ / / مخرجات "جون"

لا يزال يحتوي على إشارة إلى كائن "جون" القديم.

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

دور التهيئة عند العمل مع المتغيرات المرجعية

تعد تهيئة المتغيرات المرجعية جانبا مهما عند العمل مع الكائنات في جافا. تتيح لك التهيئة المناسبة للمتغيرات تجنب الأخطاء وضمان التنفيذ الصحيح للبرنامج.

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

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

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

تتيح لك تهيئة المتغيرات المرجعية إقامة علاقات بين الكائنات وإجراء عمليات مختلفة معها. على سبيل المثال ، عند العمل مع قوائم الكائنات أو هياكل البيانات ، تتيح لك التهيئة إضافة العناصر وحذفها وتعديلها.

من المهم ملاحظة أن تهيئة المتغيرات ضرورية فقط لأنواع البيانات المرجعية. عند العمل مع أنواع البيانات البدائية (إنت ، مزدوجة ، الخ.) يتم تهيئة قيم المتغيرات تلقائيا إلى قيم صفرية افتراضيا.

التهيئة الافتراضية للمتغيرات المرجعية

في جافا ، لا تتم تهيئة المتغيرات المرجعية (متغيرات النوع المرجعي) تلقائيا بالقيم الافتراضية. بدلا من ذلك ، يتم تعيين قيمة فارغة ، مما يعني أن المرجع لا يشير إلى أي كائن في الذاكرة. عند الوصول إلى مثل هذا الكائن غير مهيأ ، سيتم طرح استثناء نولبوانتركسيبتيون.

يمكن إجراء التهيئة الافتراضية بشكل صريح عن طريق تحديد القيمة الأولية للمتغير المرجعي عند الإعلان عنه:

سلسلة س = لاغية;

وبالتالي ، سيتم تهيئة المتغير س إلى فارغ.

أيضا ، يمكن تهيئة المتغيرات المرجعية مباشرة عند إنشاء مثيل لكائن.:

سلسلة س = سلسلة جديدة ("مرحبا");

في هذه الحالة ، سيشير المتغير س إلى كائن السلسلة الذي تم إنشاؤه بالقيمة الأولية "مرحبا".

يمكن أيضا تهيئة المتغيرات المرجعية بشكل افتراضي داخل الطرق:

برينتسترينغ الفراغ العام () {

سلسلة س = لاغية;

النظام.خارج.برينتلن (ق);

}

في هذا المثال ، يتم تهيئة المتغير س إلى فارغ داخل طريقة برينتسترينغ.

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

كيف يعمل التهيئة الافتراضية?

في جافا ، عند الإعلان عن متغير محلي من نوع مرجعي دون تعيين قيمة ، يتم تهيئة هذا المتغير تلقائيا إلى القيمة الافتراضية.

يتم تحديد القيمة الافتراضية حسب نوع بيانات المتغير وهي دائما قيمة فارغة للأنواع المرجعية.

تتجنب التهيئة الافتراضية الأخطاء عند العمل مع المتغيرات وتضمن أن المتغير له دائما قيمة أولية.

وبالتالي ، باستخدام التهيئة الافتراضية ، يمكنك التأكد من أن المتغير سيكون له قيمة ، حتى لو لم يتم تعيينه بشكل صريح.

فيما يلي أنواع البيانات وقيمها الافتراضية أثناء التهيئة:

نوع البياناتالقيمة الافتراضية
بايت0
قصيرة0
كثافة العمليات0
طويل0 لتر
تعويم0.0 فهرنهايت
مزدوج0.0 د
منطقيةخطأ
شار‘
أي نوع مرجعيلاغية

التهيئة الافتراضية هي آلية مهمة في جافا وتسمح لك بضمان الاستخدام الصحيح والآمن للمتغيرات في البرنامج. يوصى دائما باستخدام التهيئة الافتراضية إذا لم يكن هناك تعيين صريح للقيمة الأولية للمتغير.

أمثلة على استخدام التهيئة الافتراضية

.

لنلق نظرة على بعض الأمثلة على استخدام التهيئة الافتراضية:

  1. مثال 1:

    بدون تهيئة صريحة:

    رسالة سلسلة;

    .

  2. المثال 2:

    بدون تهيئة صريحة:

    قائمة الأرقام;

    .

  3. المثال 3:

    إنها فئة مخصصة:

    سيارة ميكار;

    ، لأننا لم نحدد قيمتها الأولية.

يتم استخدام التهيئة الافتراضية لضمان الأمان ومنع الأخطاء المتعلقة بالمتغيرات غير المهيأة. ومع ذلك ، يجب توخي الحذر عند استخدام القيم الافتراضية والتأكد من تهيئة المتغير قبل استخدامه لتجنب الأخطاء أو النتائج غير المرغوب فيها.

سؤال وجواب

ما هي القيم الافتراضية لمتغيرات نوع المرجع المحلي في جافا?

بالنسبة للمتغيرات المحلية لنوع المرجع في جافا ، يتم تعيين القيم الافتراضية تلقائيا وتعتمد على نوع المتغير. إذا كان متغير فئة ، ثم يتم تعيين نول ، إذا كان متغير صفيف ، ثم يتم تعيين صفيف فارغ.

ماذا يحدث إذا لم تقم بتهيئة متغير محلي من النوع المرجعي في جافا?

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

هل من الممكن تعيين قيمة افتراضية مخصصة لمتغير نوع مرجع محلي في جافا?

في جافا ، لا يمكنك تعيين قيمة افتراضية مخصصة لمتغير محلي من نوع مرجع. ستعتمد القيمة الافتراضية دائما على نوع المتغير وسيتم تعيينها تلقائيا. إذا كنت تريد استخدام قيمة افتراضية محددة ، فيجب عليك تهيئة المتغير بشكل صريح بهذه القيمة.