"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيف تعمل الواجهات على تمكين تعدد الأشكال بما يتجاوز تعريفات الطريقة البسيطة؟

كيف تعمل الواجهات على تمكين تعدد الأشكال بما يتجاوز تعريفات الطريقة البسيطة؟

تم النشر بتاريخ 2024-11-18
تصفح:785

How Do Interfaces Enable Polymorphism Beyond Simple Method Definitions?

تعدد الأشكال: أكثر من مجرد تعريفات للطريقة

في البرمجة الموجهة للكائنات، تلعب الواجهات دورًا حاسمًا في ضمان مرونة الكود وقابلية إعادة الاستخدام. بينما تشير بشكل صحيح إلى أن الواجهات تتطلب فقط الفئات التي تنفذها لتوفير الطرق الضرورية، فإن قيمتها الحقيقية تمتد إلى ما هو أبعد من إعلان الطريقة.

خذ بعين الاعتبار المثال الذي قدمته، باستخدام واجهة IBox وفئة مستطيلة. لا يمكن إنشاء مثيل لـ IBox مباشرةً، حيث إن الواجهات نفسها غير مخصصة ليتم إنشاء مثيل لها. بدلاً من ذلك، يمكنك إنشاء فئة المستطيل، التي تطبق واجهة IBox. وهذا يضمن أن المستطيل لديه الأساليب المطلوبة المحددة في الواجهة.

ومع ذلك، فإن القوة الحقيقية للواجهات تكمن في قدرتها على تمكين تعدد الأشكال. على سبيل المثال، يمكنك إنشاء قائمة بكائنات IBox، والتي يمكن أن تحتوي على مثيلات لفئات مختلفة تقوم بتنفيذ IBox، مثل المستطيل أو المربع أو الدائرة.

يمكنك بعد ذلك إجراء العمليات على كل مربع في القائمة باستخدام الطرق المحددة في IBox، على الرغم من أن الفئة الفعلية لكل صندوق قد تختلف. وهذا يلغي الحاجة إلى التحقق من النوع المحدد لكل مربع ويسمح لك بمعاملتها جميعًا ككائنات IBox.

باختصار، توفر الواجهات أكثر من مجرد توقيعات الطريقة. إنها تسهل تعدد الأشكال، مما يسمح لك بالعمل مع تطبيقات مختلفة لنفس المفهوم المجرد من خلال واجهة مشتركة. ومن خلال فصل الواجهة عن تطبيقاتها، يمكنك الحصول على المرونة وقابلية إعادة الاستخدام وسهولة صيانة قاعدة التعليمات البرمجية الخاصة بك.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3