التحميل الزائد للأساليب (Method Overloading)
جزء من قسم الأساسيات في رحلة Java على Coddy. الدرس 54 من 73.
في Java، يتيح لك التحميل الزائد للطرائق تعريف طرائق متعددة بالاسم نفسه ولكن بمعاملات مختلفة. وهذا يعني أنه يمكنك امتلاك عدة طرائق تؤدي وظيفة متشابهة، لكنها تعمل على أنواع بيانات مختلفة أو على عدد مختلف من الوسائط.
المفتاح هو أن كل طريقة محمّلة بشكل زائد يجب أن تمتلك توقيع طريقة فريدًا. ويتحدد توقيع الطريقة من خلال اسم الطريقة ونوع معلماتها وترتيبها.
إليك القواعد الأساسية لتحميل الأساليب الزائد:
- الاسم نفسه: يجب أن تحمل جميع الأساليب المحمّلة تحميلًا زائدًا الاسم نفسه.
- معلمات مختلفة: يجب أن يختلف كل إصدار من الأسلوب في عدد المعلمات أو أنواعها أو كليهما.
- نوع الإرجاع غير كافٍ: لا يمكن أن تختلف الأساليب المحمّلة بشكل زائد في نوع الإرجاع فقط. يجب أن تكون لها قوائم معلمات مختلفة.
إليك مثالًا لتوضيح التحميل الزائد للطرق:
public class MathUtils {
public static int add(int a, int b) {
return a + b;
}
public static double add(double a, double b) {
return a + b;
}
public static int add(int a, int b, int c) {
return a + b + c;
}
}في هذا المثال، لدينا ثلاث دوال باسم add. تضيف الأولى عددين صحيحين، وتضيف الثانية قيمتي double، وتضيف الثالثة ثلاثة أعداد صحيحة.
تحدد Java الطريقة التي سيتم استدعاؤها بناءً على الوسائط المُمرَّرة أثناء استدعاء الطريقة.
يجعل التحميل الزائد للطرق الشيفرة أكثر قابلية للقراءة وإعادة الاستخدام. بدلًا من إنشاء أسماء مختلفة للطرق التي تؤدي مهام متشابهة (مثل addInts وaddDoubles وaddThreeInts)، يمكنك استخدام اسم واحد، add، وترك المصرّف يختار الطريقة المناسبة بناءً على السياق.
تذكّر: تتطلب التحميلة الزائدة أنواعًا أو أعدادًا مختلفة من المعاملات، وليس مجرد أسماء معاملات أو أنواع قيمة إرجاع مختلفة.
جرّب بنفسك
لا يتضمّن هذا الدرس تحدّيًا برمجيًا.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمة (Modulo)الزيادة والنقصانالزيادة والنقصان اللاحقةاختصارات العمليات الحسابيةمعاملات المقارنةمقارنة النصوص7أساسيات الإدخال والإخراج
دوال System.outتنسيق المخرجاتكلاس Scannerمراجعة - حتى 120مراجعة - صح أم خطأ10الأساليب (الدوال)
تعريف الأساليبمعاملات الأساليبأنواع الإرجاعالتحميل الزائد للأساليب (Method Overloading)مراجعة - دالة Sigmaمراجعة - دالة التحقق (Validation)أساليب Void5المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالثالمعاملات المنطقية - الجزء الرابع3المتغيرات - الجزء الثاني
الثوابتقواعد التسميةمراجعة - تهيئة المتغيراتتحويل الأنواع - الجزء الأولتحويل الأنواع - الجزء الثاني6اتخاذ القرار
جملة Ifجملة If - Elseجملة Switchالمعامل الثلاثيمراجعة - If Elseجملة If - Else المتداخلةتدرّب بنفسك: مترجم Java عبر الإنترنت