الفرق بين الصف التجريدي والواجهة

Anonim

الفئة المجردة مقابل الواجهة

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

ما هي الفئة المجردة؟

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

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

ما هي الواجهة؟

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

ما هو الفرق بين الفئة المجردة والواجهة؟

تمثل الفئات المجردة عادة مفهوما مجردا أو كيانا مع تنفيذ جزئي أو معدوم. من ناحية أخرى، واجهة هو نوع مجرد يستخدم لتحديد العقد الذي يجب أن تنفذ من قبل الفئات. وينبغي أن تكون الطبقات المجردة موروثة (أو ممتدة)، في حين ينبغي تنفيذ الواجهات. قد تحتوي الطبقات المجردة على أساليب مجردة، في حين أن واجهة يجب أن تحتوي فقط على أساليب مجردة. يمكن أن تحتوي الطبقات المجردة على أي متغيرات، ولكن يمكن للواجهات تحديد الثوابت فقط. لا يمكن أن ترث فئة من أكثر من فئة مجردة واحدة ولكن يمكن تنفيذ واجهات متعددة. لا يمكن للواجهة تنفيذ واجهة أخرى. ومع ذلك واجهة يمكن تمديد فئة.