الحمل الزائد (طريقة اختيار إعادة التحميل):
يسمح Java بوجود أساليب في الفصل الدراسي ، ولكن عندما تكون الأسماء هي نفسها ، سيتم إدراج المعلمات المختلفة. ، ستحدث أخطاء وقت التجميع دون مطابقة المعلمات أو العثور على مباريات متعددة ممكنة.
يشمل التحميل الزائد: التحميل الزائد للطرق العادية وحملها الزائد لطرق المنشئ
الطريقة: أي وظيفة (التي نسميها بشكل جماعي في "الطريقة") ، هي قطاع برنامج ثابت ، أو روتين فرعي ، والذي يمكنه تحقيق وظائف التشغيل الثابتة. علاوة على ذلك ، فإنه يحتوي على مدخل ومخرج. يسمى الخروج يعني الوظيفة.
بشكل عام ، يمكن أن يكون للفئة أساليب التحميل الزائد المتعددة ، ويمكن تصميم طرق التحميل الزائد المختلفة في الفصل وفقًا لتلبية الاحتياجات المختلفة. من بينها ، عدد المعلمات والأنواع ، وحتى ترتيب أنواع مختلفة من المعلمات هي عمليات تحميل مختلفة لنفس الطريقة. على سبيل المثال ، كما هو موضح في الشكل ، فئة السلسلة التي نراها غالبًا هي مثال نموذجي.
ملاحظة: يقوم هذا المثال أيضًا بتصحيح خطأ مثير للسخرية قمت به عندما شاركت تجربتي في المرة الأخيرة. تحقق من العنوان مرة أخرى ، فهذا يعني أنه صحيح ، وهو عبارة عن تحميل زائد ، ولا يتم كتابته كإعادة كتابة.
الطريقة/الخطوة
أولاً ، دعنا نكتب مثالًا كاملاً. هذه هي الطريقة الأكثر بدائية ، كما هو موضح في الشكل. سوف نستمر في تعلم كل خطوة في المستقبل وإعادة تحميل هذه الطريقة طبقة تلو الأخرى.
1. في البداية ، دعنا نناقش ما إذا كان معدل الوصول له تأثير على مناقشة اليوم. أي أنها ليست شروطًا ضرورية لتشكيل طرق مختلفة. بعبارات Layman ، لا علاقة للفرق في الأساليب بما إذا كان معدل الوصول متسقًا. كما هو موضح في الشكل ، إذا كان معدل الوصول غير متسق وكانت المعلمات هي نفسها (أو لا يوجد لدى أي منها معلمات) ، فإن Java افتراضيًا لهم بنفس الطريقة ، لذلك لا يمكن تمرير التجميع والإبلاغ عن خطأ.
2. بعد استبعاد معدلات الوصول ، دعنا نناقش ما إذا كان الفرق في قيمة العودة يمكن أن يكون طريقة أخرى للتحميل الزائد. النوع.
3. الفرق الوحيد التالي هو المعلمات. دعونا نمارس وفقًا للمواقف. الأول هو معلمات مختلفة.
4. في الخطوة الثالثة ، نتحدث عن معلمات مختلفة. كما هو موضح في الشكل ، فإن أنواع المعلمات هي نفسها ، وكلاهما نوع من عدد صحيح ، ولكن أسماء المعلمات الرسمية مختلفة ، لذلك لا يمكن تمرير التجميع.
5. أيضا ، الزائد الناجم عن معلمات مختلفة. يمكننا كتابة مثال آخر ، طريقة واحدة بدون معلمة ، طريقة 1 int المعلمة ، وطريقتين للمعلمة int ، كما هو موضح في الشكل:
6. في هذا الوقت ، وصلنا إلى الرابط الرئيسي. هل هناك أي نوع آخر من الأحمال الزائدة المختلفة؟ بعض! تخيل أن المعلمات مختلفة والأرقام متشابهة. نعم! خمن بشكل صحيح! الأمر مختلف! في الطلبات المختلفة ، لا تزال هناك طرق مختلفة ، والتي تتيح أيضًا التحميل الزائد. كما هو موضح في الصورة:
هنا مثال بسيط آخر
int sum (int m ، int n) {return m +n ؛} int sum (int m ، int n ، int k) {return m +n +k ؛} double (double m ، double n) {return m + n ؛} sum double (double m ، double n ، double k) {return m+n+k ؛} التنفيذ الرئيسي هو مبلغ الأسلوب الزائد ، الذي يحتوي على الدلالات التالية:
SUM (M ، N): ابحث عن مجموع الأعداد الصحيحة M و N ،
SUM (M ، N ، K): ابحث عن مجموع الأعداد الصحيحة M ، N و K ،
SUM (M ، N): ابحث عن مجموع الأرقام الحقيقية M و N ،
SUM (M ، N ، K): ابحث عن مجموع الأرقام الحقيقية M و N و K.
أخيرًا ، دعنا نلخص هذا التحميل الزائد فقط للمعلمات.