يعني التحميل الزائد أن الطرق المتعددة مع نفس الاسم ولكن يمكن تعريف المعلمات المختلفة في فئة. عند استدعاء ، سيتم تحديد الطريقة المقابلة وفقًا لجدول المعلمة غير المستخدمة.
على سبيل المثال
اختبار الفئة العامة {void max (int a ، int b) {system.out.println (a> b؟ a: b) ؛ } void max (double a ، double b) {system.out.println (a> b؟ a: b) ؛ } public static void main (string [] args) {test t = new test () ؛ T.Max (3،4) ؛ T.Max (3.0،4.4) ؛ }}الإخراج هو:
4 4.4
يمكن أيضًا تحميل المُنشئ
لنلقي نظرة على مثال آخر
فئة chongzai {public void a (int a) ؛ الفراغ العام A (String A) ؛ الفراغ العام A (int a ، int b) ؛} كما ذكر أعلاه ، فهو عبارة عن تحميل زائد ويجب أن يفي الحمل الزائد بالشروط التالية:
1. يجب أن يكون نفس الفصل
2. اسم الطريقة (يمكن أن يسمى أيضًا وظيفة)
3. أنواع المعلمات مختلفة أو عدد المعلمات مختلفة
في الوقت نفسه ، سأخبر LZ أيضًا عن وظيفة التحميل الزائد. دعنا نتحدث عن المثال أعلاه.
Chongzai CZ = New Chongzai () ؛ CZ.A (1) ؛ // استدعاء A (int a) ؛ cz.a ("المعلمة المجوفة") ؛ // استدعاء (سلسلة أ) CZ.A (1،2) ؛ // استدعاء A (int a ، int b)ما سبق ذكر بالفعل الطريقة التي يمكن الاتصال بها. يتم استخدام هذه الطريقة من قبل البرنامج لتحديد طريقة الاتصال وفقًا للمعلمات التي أدخلتها.
دعنا نتحدث عن وظيفة التحميل الزائد ، على سبيل المثال ، إذا قمت بعمل لعبة ، فقد يكون لديك العديد من الأشخاص الذين ينهيون اللعبة. إذا كان عدد الأشخاص غير متأكدين من عدد الأشخاص ، فيمكنك استخدام التحميل الزائد.
على سبيل المثال ، على الأكثر 3 أشخاص ، يمكنك تحديد 3 معلمات
الفراغ العام A (السلسلة أ) ؛ الفراغ العام A (السلسلة A ، السلسلة B) ؛ الفراغ العام A (السلسلة A ، السلسلة B ، السلسلة C) ؛
شخصان ، ثم تتصل بالطريقة مع معلمتين ، 3 أشخاص ، يمكنك الاتصال بالطريقة مع 3 معلمات ، وكيفية تسميتها تم شرحها أعلاه