أسلوب التحميل الزائد في Java [مع أمثلة]

نشرت: 2020-11-12

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

في هذه المقالة ، سنناقش طريقة التحميل الزائد في Java وهو نوع تعدد الأشكال.

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

تعدد الأشكال

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

تعلم كيفية إنشاء تطبيقات مثل Swiggy و Quora و IMDB والمزيد

يعني تجاوز الطريقة أن الفئة الفرعية يمكن أن يكون لها طريقة بنفس اسم الفئة الأصلية ولكن باستخدام تطبيق مختلف. سنناقش طريقة التحميل الزائد بمزيد من التفاصيل في هذه المقالة. بالنسبة لـ Method Overriding ، يمكنك زيارة upGrad والحصول على رؤى.

طريقة التحميل الزائد في جافا

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

يمكن فهمه بعبارات بسيطة بمثال بسيط. إضافة فئة لها طريقتان تدعى add () ، طريقة واحدة بها معلمات int a و int b ، بينما تحتوي الطريقة الأخرى على ثلاثة معاملات عدد صحيح ، أي int a و int b و int c. لذلك ، يُقال أن طريقة add () محملة بشكل زائد.

تعتمد الطريقة التي سيتم تنفيذها على عدد المعلمات التي تم تمريرها في تعليمة استدعاء الأسلوب. للتوضيح ، إضافة (20،30) ستستدعي طريقة add () التي تحتوي على معاملين ، وإضافة (10،20،30) ستستدعي طريقة add بثلاث معاملات.

طرق مختلفة لإفراط طريقة

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

  1. عدد المعلمات
  2. نوع بيانات المعلمات
  3. تسلسل نوع البيانات من المعلمات

عدد المعلمات

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

الطريقة الأولى: إضافة (int ، int)

الطريقة 2: إضافة (int ، int ، int)

طريقة استدعاء عبارة الاستدعاء (20،30) ستنفذ الطريقة 1 وستقوم إضافة عبارة استدعاء الأسلوب (10،20،30) بتنفيذ الطريقة 2.

نوع البيانات من المعلمات

في هذا النوع من التحميل الزائد للطريقة في Java ، تحمل طريقتا java للفصل نفس الاسم ، ويمكن أن يكون عدد المعلمات متماثلًا أو مختلفًا ، لكن نوع بيانات المعلمات سيختلف.

الطريقة الأولى: إضافة (int ، int)

الطريقة 2: إضافة (int، float)

الطريقة الثالثة: إضافة (تعويم ، تعويم)

في الطرق المذكورة أعلاه ، يكون اسم الطريقة هو نفسه ، لكن نوع بيانات المعلمات مختلف. لذلك ، طريقة استدعاء عبارة الإضافة (2 ، 5.5) ستنفذ الطريقة 2. وبالمثل ، إضافة (7.5، 10.25) ستنفذ الطريقة 3.

تسلسل نوع البيانات من المعلمات

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

الطريقة الأولى: إضافة (int، float)

الطريقة 2: إضافة (عائم ، كثافة العمليات)

هنا ، استدعاء العبارة لإضافة (100 ، 75.5) سيؤدي إلى استدعاء method1 للتنفيذ ، وإضافة (55.25، 150) ستنفذ الطريقة 2.

لذلك ، فإن المعلمات في بيان الاستدعاء هي التي تحدد الطريقة التي يتم تحميلها بشكل زائد.

قراءة: طريقة التحميل الزائد في Java

لماذا نحتاج طريقة التحميل الزائد في جافا؟

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

دعنا نتعرف على مزايا تنفيذ طريقة التحميل الزائد في Java.

مزايا أداء طريقة التحميل الزائد في Java

فيما يلي بعض مزايا التحميل الزائد للطريقة في Java :

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

يجب أن تقرأ: مهنة في جافا

قواعد طريقة التحميل الزائد في Java

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

نقاط مهمة حول أسلوب التحميل الزائد في Java

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

الطريقة 1 : إضافة int (عائم ، عائم)

الطريقة 2 : إضافة تعويم (تعويم ، تعويم)

هذه هي الحالة غير الصالحة للحمل الزائد للطريقة حيث أن كلا الأسلوبين Add () لهما نفس الاسم ونفس قائمة المعلمات.

يوجد أدناه الكود الذي يشرح طريقة التحميل الزائد في Java:

مجموع الفئة {

int الخاصة أ ؛

int الخاصة ب ؛

int الخاص ج ؛

int الخاصة د ؛

إضافة عامة int (int a، int b) {

كثافة العمليات ج ؛

ج = أ + ب ؛

عودة ج ؛

}

إضافة عامة int (int a، float b) {

كثافة العمليات ج ؛

ج = أ + ب ؛

عودة ج ؛

}

int public add (float a، float b) {

كثافة العمليات ج ؛

ج = أ + ب ؛

عودة ج ؛

}

إضافة عامة int (float a، int b، int c) {

كثافة العمليات د ؛

د = أ + ب + ج ؛

عودة د ؛

}

}

الرئيسي العام الثابت الفارغ (سلسلة [] args)

{

// إنشاء كائن من الفئة بالطريقة الرئيسية

sum obj1 = مبلغ جديد () ؛

sum1 = obj1.add (10،20) ؛

sum2 = obj1.add (10،55.5) ؛

sum3 = obj1.add (110.5،25.5) ؛

sum4 = obj1.add (10 ، 20 ، 30) ؛

}

اقرأ أيضًا: برامج النمط في Java

خاتمة

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

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

انطلق في وظيفة أحلامك

الترقية و IIIT-BANGALORE دبلوم PG في تطوير البرامج
يتعلم أكثر