1. لماذا استخدام الواجهات
إذا كان هناك شرط: فهو يتطلب وظيفة الباب المضاد للسرقة. يحتوي الباب على وظائف "Open" و "Close" ، والقفل له وظائف "قفل" و "فتح".
التحليل: أولاً وقبل كل شيء ، الباب المضاد للسرقة هو الباب. يحتوي الباب على وظائف فتح وإغلاق الباب ، وهناك أيضًا قفل. القفل لديه فتح وقفل. وفقًا لفكرة البرمجة الموجهة للكائنات ، سننظر إلى كل من الباب والقفل كطبقة ويوجد بشكل منفصل. ومع ذلك ، لا يمكن مورث الباب المضاد للسرقة من الباب والانقاب الذاتي. الباب المضاد للسرقة ليس قفلًا ، والذي لا يتوافق مع علاقة هو في الميراث. ويرد ميراث واحد في جافا. فكيف نحل هذه المشكلة؟ في هذا الوقت ، نحتاج إلى استخدام الواجهة.
2. ما هي واجهة
في البرامج ، تعتبر الواجهات مواصفات ومعيارية. يمكن أن تقيد سلوك الفصول الدراسية وهي مجموعة من بعض ميزات الطريقة. ومع ذلك ، لا يوجد تنفيذ للطرق. يمكن اعتبار الواجهات فعليًا فئة مجردة خاصة ، لكنها تستخدم طرقًا مختلفة تمامًا من الفئات المجردة لتمثيلها. مفاهيم تصميم الاثنين مختلفة أيضا. الفئات المجردة تفضي إلى إعادة استخدام التعليمات البرمجية ، والواجهات تفضي إلى توسيع الكود والصيانة.
3. الفرق بين الفئات المجردة والواجهات:
يمكن أن توفر فئات 01abstract تفاصيل التنفيذ لأساليب الأعضاء ، في حين يمكن أن توجد أساليب مجردة عامة فقط في الواجهة ؛
02. يمكن أن تكون متغيرات الأعضاء في الفئات التجريدية من أنواع مختلفة ، في حين أن متغيرات الأعضاء في الواجهات يمكن أن تكون فقط من النوع النهائي الثابت العام ؛
03. لا يمكن أن تحتوي الواجهة على كتل رمز ثابت وطرق ثابتة ، في حين أن الفئات المجردة يمكن أن تحتوي على كتل رمز ثابت وطرق ثابتة ؛
04. يمكن للفئة أن ترث فئة مجردة واحدة فقط ، بينما يمكن للفصل تنفيذ واجهات متعددة.
4. كيفية تحديد واجهة
دعونا أولاً نلقي نظرة على بناء الجملة:
[Modifier] واجهة واجهة اسم الواجهة الأصل 1 ، الواجهة الأصل 2 ، ...
{
// تعريف ثابت
// تعريف الطريقة
}
تنفيذ بناء جملة الواجهة في فئة:
اسم الفئة اسم الفئة الأصل اسم الواجهة 1 ، الواجهة 2 ، ...
{
// عضو الفصل
}
5. تحديد نقاط الواجهة
01. قواعد التسمية للواجهة هي نفسها قوت الفئة. إذا كان المعدل عامًا ، فإن الواجهة مرئية خلال المشروع ؛ إذا تم حذف المعدل ، فإن الواجهة مرئية فقط في الحزمة الحالية.
02. يمكن تعريف الثوابت في الواجهة ، ولكن لا يمكن تحديد المتغيرات. إذا قمت بتحديد السمات في الواجهة ، ثم من خلال فك الإلغاء ، يمكنك أن ترى أنه سيعدلها تلقائيًا مع نهائي ثابت عام. السمات في الواجهة كلها ثوابت ثابتة عالمية ، ويجب أن تحدد الثوابت الموجودة في الواجهة القيمة الأولية عند تحديدها.
03. جميع الطرق في الواجهة هي طرق مجردة ، وسيتم تعديل الأساليب في الواجهة تلقائيًا مع الملخص العام ، أي أن هناك طرقًا مجردة عالمية فقط في الواجهة.
04. لا يمكن إنشاء إنشاء الواجهة ولا يمكن أن يكون هناك بنية في الواجهة.
05 يمكن تحقيق علاقة الميراث من خلال تمتد بين الواجهات. يمكن أن ترث واجهة واحدة واجهات متعددة ، لكن الواجهة لا يمكن أن ترث فئات.
06. يجب على فئة تنفيذ الواجهة تنفيذ جميع طرق الواجهة ، وإلا يجب تعريفها على أنها فئة مجردة.