يدرس هذه المقالة بشكل أساسي المحتوى المتعلق بالتحميل الزائد ، وإعادة الكتابة ، والتشكيل ، والربط الثابت والربط الديناميكي في Java ، على النحو التالي.
الزائد ، الاسم الإنجليزي هو الحمل الزائد ، مما يعني أنه يتم تعريف أكثر من طريقة مع نفس الاسم في الفصل. لا يمكن أن يكون عدد المعلمات وأنواع المعلمات وترتيب هذه الأساليب هو نفسه. يمكن أن يكون نوع الإرجاع هو نفسه أو مختلف.
الفئة العامة tstaticoverload {static int height ؛ tstaticoverload () {system.out.println ("زراعة الشتلات") ؛ الارتفاع = 0 ؛ "أقدام طويلة") ؛} معلومات الفراغ الثابتة (سلسلة S) {system.out.println (S + ": TREE هي" + ارتفاع + "أقدام طويلة") ؛}} الفئة العامة testso {public static void main (string [] args) {tstaticoverload t = new tstaticoverload (5) ؛ tstaticoverload.info () ؛خارج: إنشاء شجرة جديدة يبلغ طولها 5 أقدام يبلغ طولها 5 أقدام طريقة التحميل الزائد: يبلغ طول الشجرة 5 أقدام يزرع الشتلات
إعادة كتابة ، يتم تجاوز الاسم الإنجليزي ، مما يعني أنه في حالة الميراث ، يتم تحديد طريقة محددة في الفئة الفرعية التي لها نفس الاسم ، ونوع الإرجاع نفسه ، أو النوع المتوافق ونفس المعلمات التي يتم تحديدها في الأساليب في الفئة الأساسية. وهذا ما يسمى الفئة الفرعية يعيد كتابة طريقة فئة الأساس. هذه خطوة ضرورية لتنفيذ تعدد الأشكال.
تعدد الأشكال: تعدد الأشكال هو قدرة نفس السلوك على وجود مظاهر أو أشكال مختلفة متعددة.
الفئة العامة staticsupper {public static string staticget () {return "base staticget ()" ؛} السلسلة العامة DynamicGet () {return "base dynamicget () ؛}} class staticsub staticupper {pub static staticget () {return" sub staticget () ؛ staticMub يمتد StaticSupper {pub static staticget () {return "mub staticget ()" ؛} السلسلة العامة DynamicGet () {return "mub dynamicget ()" ؛}} الطبقة العامة staticpolymorphism {public static void main (string [] args) {StaticSupper sup1 = new StaticSub () ؛ System.out.println (sup1.staticget ()) ؛ System.out.println (sup1.dynamicget ()) ؛ StaticSupper sup2 = new StaticMub () ؛ system.out.println (sup2.staticget ()) ؛ system.out.println (sup2.dynamicget ()) ؛ }}Out: Base Staticget () DynamicGet () base staticget () mub dynamicget ()
مفهوم ملزمة البرنامج:
يشير الربط إلى ارتباط استدعاء الطريقة مع الفصل (جسم الطريقة) حيث توجد الطريقة. بالنسبة إلى Java ، يتم تقسيم الربط إلى ربط ثابت وربط ديناميكي ؛ أو يسمى الربط المبكر والربط المتأخر.
ملزمة ثابت:
تم ربط الطريقة قبل تنفيذ البرنامج ويتم تنفيذها بواسطة برنامج التحويل البرمجي أو برنامج الاتصال الآخر. على سبيل المثال: C.
بالنسبة إلى Java ، يمكن فهمها على أنها ملزمة خلال فترة تجميع البرنامج ؛ فيما يلي بشكل خاص أن الأساليب الوحيدة في Java هي الأساليب النهائية والثابتة والخاصة والمنشأة التي تكون ملزمة مبكرة.
الربط الديناميكي:
الربط لاحقًا: يشير الربط الديناميكي إلى عدم معرفة المترجم بأي طريقة للاتصال بها أثناء مرحلة التجميع حتى يتم ربط وقت التشغيل وفقًا لنوع الكائن المحدد.
إذا كانت اللغة تنفذ الربط المتأخر ، فيجب أن توفر أيضًا بعض الآليات لتحديد نوع الكائن أثناء التشغيل واستدعاء الطرق المناسبة بشكل منفصل. بمعنى آخر ، لا يزال المترجم لا يعرف نوع الكائن في هذا الوقت ، ولكن يمكن أن تحقق آلية استدعاء الطريقة في حد ذاتها وإيجاد هيكل الطريقة الصحيحة. اللغات المختلفة لها طرق مختلفة لتنفيذ الربط المتأخر. ولكن يمكننا على الأقل التفكير بهذه الطريقة: كلهم بحاجة إلى تثبيت أنواع خاصة من المعلومات في الكائن.
يتضمن التحميل الزائد للأسلوب طريقة التحميل الثابت والطريقة العادية. الطريقة الثابتة الزائد هو الربط الثابت ، ودعوة الطريقة من خلال: اسم الفصل. طريقة. الطريقة العادية الزائد هو الربط الديناميكي ، ومكالمات الطريقة من خلال: مرجع كائن مثيل. طريقة. يمكن أن يتم تحميل المُنشئ ، ولكن لا يمكن إعادة كتابته.
يمكن إعادة كتابة الطرق الثابتة ، ولكن لا يتم تحقيق أي تأثير متعدد الأشكال.
لخص
ما سبق يدور حول مناقشة هذه المقالة وجيزة حول التحميل الزائد وإعادة الكتابة وتعدد الأشكال والربط الثابت والربط الديناميكي في Java. آمل أن يكون ذلك مفيدًا للجميع. يمكن للأصدقاء المهتمين الاستمرار في الرجوع إلى الموضوعات الأخرى ذات الصلة على هذا الموقع. إذا كانت هناك أي أوجه قصور ، فيرجى ترك رسالة لإشارةها. شكرا لك يا أصدقائك لدعمكم لهذا الموقع!