المُنشئ الزائد في Java: الشرح والفوائد والأمثلة

نشرت: 2021-07-22

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

أساسيات جافا

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

بناة في جافا

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

لماذا نحتاج منشئ في جافا؟

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

متى يتم استدعاء المنشئ؟

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

منشئ التحميل الزائد في جافا

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

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

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

استخدام الحمولة الزائدة للمنشئ

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

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

قراءة: شرح مكونات Java Career & Architecture

مثال على كود لتنفيذ المُنشئ التحميل الزائد في Java

دعونا نفكر في برنامج يكون فيه فصل الموظف لديه ثلاثة صانعين. بناءً على القيم التي تم تمريرها ، يتم استدعاء كل من الثلاثة لتهيئة كائن.

استخدام هذا المرجع في جافا

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

بعض السيناريوهات المهمة التي يتم فيها استخدام مرجع "هذا" هي:

  1. عندما تختلف أسماء المعلمات عن أسماء متغيرات الحالة
  2. عندما يتم تمرير مرجع إلى الكائن الحالي ومعلمة إلى طريقة أخرى
  3. عندما يتم استدعاء مُنشئ من مُنشئ آخر.

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

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

فوائد التحميل الزائد للمنشئ في Java

المزايا الرئيسية للاستفادة من التحميل الزائد للمنشئ أثناء كتابة برامج Java هي:

  • يتيح التحميل الزائد للمنشئ تحقيق تعدد الأشكال الثابت.
  • يمكن تهيئة مثيلات الفئة بعدة طرق باستخدام التحميل الزائد للمنشئ.
  • يسهل عملية تحديد عدة منشآت في الفصل بتوقيعات فريدة.
  • يقوم كل مُنشئ مُحمّل بشكل زائد بأداء مهام مختلفة لأغراض محددة.

ملخص

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

إذا كنت مهتمًا بمعرفة المزيد حول تطوير برامج المكدس الكامل ، فتحقق من برنامج upGrad & IIIT-B التنفيذي PG في تطوير البرمجيات - التخصص في تطوير المكدس الكامل المصمم للمهنيين العاملين ويقدم أكثر من 500 ساعة من التدريب الصارم ، 9+ المشاريع والمهام ، وحالة خريجي IIIT-B ، ومشاريع التخرج العملية العملية والمساعدة في العمل مع الشركات الكبرى.

استعد لمهنة المستقبل

تقدم بطلب للحصول على برنامج PG التنفيذي في تطوير البرمجيات بواسطة IIIT-B