تجاوز الطريقة:
الأمر لا يتعلق فقط بالتسمية، بل هو ميزة أساسية في Java.
يعتمد على مفهوم إرسال الطريقة الديناميكية.
إرسال الطريقة الديناميكية:
هي الآلية التي يتم من خلالها حل استدعاء الأسلوب المتداخل في وقت التشغيل، وليس في وقت الترجمة.
يسمح بتنفيذ تعدد الأشكال في جافا.
كيف يعمل:
يمكن للمتغير المرجعي للفئة الفائقة أن يشير إلى كائن فئة فرعية.
عندما يتم استدعاء طريقة متجاوزة من خلال مرجع فئة فائقة، يتم تحديد إصدار الطريقة التي سيتم تنفيذها بناءً على نوع الكائن في وقت الاستدعاء.
لذلك، يتم اختيار الطريقة التي سيتم تنفيذها في وقت التشغيل.
أهمية:
يحدد نوع الكائن المشار إليه (وليس نوع المتغير المرجعي) إصدار الأسلوب المتجاوز الذي سيتم تنفيذه.
يسمح هذا لأنواع مختلفة من الكائنات، المشار إليها بواسطة متغير مرجعي من الفئة الفائقة، باستدعاء إصدارات مختلفة من الطريقة المتجاوزة.
هيكل البرنامج:
الطبقة الفائقة: Sup، باستخدام طريقة who().
الفئات الفرعية: Sub1 وSub2، كلاهما يتجاوز طريقة who().
التنفيذ في main():
إنشاء الكائنات superOb (النوع Sup)، subOb1 (النوع Sub1)، وsubOb2 (النوع Sub2).
يتم استخدام المتغير المرجعي subRef من النوع Sup للإشارة إلى الكائنات المختلفة.
سلوك:
مخرجات البرنامج:
اعتمادًا على نوع الكائن المشار إليه (superOb أو subOb1 أو subOb2)، يتم استدعاء وعرض الإصدار المقابل من طريقة who().
يوضح هذا مفهوم الإرسال الديناميكي، حيث يتم تحديد الطريقة التي يتم تنفيذها في وقت التشغيل، مما يسمح بتنفيذ تعدد الأشكال.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3