1. الطريقة الزائدة
اسم الطريقة هو نفسه ، ولكن المعلمات مختلفة ، وهذا هو الحمل الزائد.
ما يسمى المعلمات المختلفة لها نقطتان رئيسيتان: الأول هو أن عدد المعلمات مختلف ، والثاني هو أن أنواع المعلمات مختلفة. طالما يختلف أحد هذين الجانبين ، فقد يشكل حمولة زائدة من هذه الطريقة.
Package cn.galc.test ؛ فئة عامة TestOverload {void max (int a ، int b) {system.out.println (a> b؟ a: b) ؛ } / * * int max (int a ، int b) { * return a> b؟ ج: ب ؛ *} */ void max (float a ، float b) {system.out.println (a> b؟ a: b) ؛ }}هنا ، فإن الطريقتين الأقصى مع مُعدِّل الفراغ لهما نفس الاسم ، لكن أنواع المعلمات الخاصة بها مختلفة ، بحيث يمكن أن تشكل التحميل الزائد. لا تشكل طريقة int max (int a ، int b) وطريقة void max (int a ، int b) التحميل الزائد. الآن هم طريقتان بأسماء مكررة. لا يُسمح بإعلان طريقتين بأسماء مكررة في الفصل ، وسيكون هناك خطأ في التجميع. اسم الطريقة هو نفسه ونوع المعلمة هو نفسه. فقط قيمة الإرجاع مختلفة. هذا لا يشكل حمولة زائدة ، لأنه يمكن استدعاء الطريقة بهذه الطريقة. لا يمكن استخدامه عند استدعاء طريقة. لذلك ، عند استدعاء هاتين الطريقتين ، يتم تمرير رقم عدد صحيح. نظرًا لأن كلا الطريقتين لهما نفس الاسم ونوع المعلمة ، لا يمكن للمترجم التمييز بين الطريقة التي سيتم استدعاؤها. سبب المستوى العميق للتحميل الزائد: طالما أن برنامج التحويل البرمجي لهاتين الطريقتين يمكنه التمييز بينهما ومعرفة الشخص الذي يجب استدعاؤه عند الاتصال ، فلن يكون هناك أي تشويش ، وهاتان الطريقتان تشكلان التحميل الزائد.
دعونا نلقي نظرة على الطريقتين التاليتين:
int max (int a ، int b) {system.out.println ("the int max (int a ، int b) method elem") ؛ إرجاع أ> ب؟ a: b ؛} int max (قصيرة a ، قصيرة b) {system.out.println ("طريقة int max (قصيرة a ، قصيرة b) تسمى") ؛ إرجاع أ> ب؟ ج: ب ؛} يمكن أن تشكل هاتان الطريقتان أيضًا زيادة في الحمل الزائد ، لأن المترجم سيتعامل معها كنوع Int بمجرد أن يرى عددًا صحيحًا. لذلك عند تمرير عدد صحيح ، يقوم المترجم أولاً باستدعاء الطريقة MAX (int a ، int b). إذا كنت ترغب في استدعاء الطريقة MAX (Short A ، Short B) ، فيجب عليك كتابتها بالطريقة الرئيسية مثل هذه:
public static void main (string [] args) {testOverload t = new testOverload () ؛ T.Max (3،4) ؛ // تسمى الطريقة max (int a ، int b) قصيرة a = 3 ؛ قصير ب = 4 ؛ T.Max (A ، B) ؛ // طريقة MAX (قصيرة أ ، قصيرة ب) تسمى هنا. }2. التحميل الزائد لطرق البناء
مثل الأساليب العادية ، يمكن أيضًا تحميل المُنشئين
حزمة cn.galc.test ؛ فئة عامة شخص {int id ؛ عمري / *** constructor*/ public person () {id = 0 ؛ العمر = 20 ؛ } / *** Overtructor Overload One* param i* / public person (int i) {id = i ؛ العمر = 20 ؛ } / ** * Overtructor Overload two * param i * param j * / public person (int i ، int j) {id = i ؛ العمر = ي ؛ }}ما سبق هو شرح مفصل لعملية التحميل الزائد لطرق Java. آمل أن يكون ذلك مفيدًا لتعلم الجميع.