برمجة جافا CS602 & GS311 Java Programming I عملي )(LAB
الواجها(ت )الوصل(ت( interfaces تشبه الى حد كبير classو لكنها تخعتلف عنها في كونها تدعم الوراثة العتعددة على عكس ،superclass ل فمثل لكل subclassيوجد superclassواحدة فقط ،بينما يمكن أن يكون ل classاكثر من interface واحدة .و الشكل العام لها هو:
اس ي ي ي ييم الواجه ي ي ي يية
كلم ي ي ي يية محج ي ي ي ييوزة مع ي ي ي ييدل الوص ي ي ي ييول )اخعتي ي ي ي يياري
(optional
Access modifier interface interface-name { اسماء الثوابت من نوع )final type variables (constants الدوال من نوع abstract methods ل يمكن اسعتخدام هذه الدوال إل بعد إعادة تعريفها مرة أخرى في العتصنيف الراد اسعتخدام هذه الدوال فيه } **ملظحظا(ت: .1 .2
يعتم تعريف الدالة في ال interfaceعن طريق كعتابتها بالشكل العتالي: ; )…………(Return-type method-name تدعم interfaceعملية تعدد الكشكال ،حيث يمكن تكوين مصفوفة من نوع interfaceتحعتوي على أنواع مخعتلفة من الكائنات.
.3لسعتخدام interfaceفي البرنامج ،نتبع الشكل العتالي: اسم الوصلة 2اسم الوصلة 1 اسم الوصلة ن
اسم كلمة محجوزة العتصنيف معدل الوصول Public class class-name implements interface-name1 ,interface name2 ,…,interface-namen كلمة محجوزة }
………. …………… ………. {
.4 .5
يمك يين لي classتنج ز او تنف ذ interfaceان تس عتخدم ال دوال الوج ودة داخ ل ال interfaces عن طريق إعادة تصرحها و كعتابة تفاصيلها مرة اخرى داخل هذه ال .class ال interfaceتععتبر بمثابة تعريف للطرق التي تحدد العتفاعل فيميا بيين الكشيياء ،مثل السيعتخدم و النظام .بمعنى آخر interface ،هي التي تحدد العمليات السموح بتنفيذها دون الحاجة الة معرفة كفية عمل هذه العمليات.
Abstract modifier: ييسعتخدم مع classesو methodsو يعتم اتباع الشكل العتالي: }public abstract class class-name{……………. )public abstract void method-name(……. فإذا كانت ال classمن نوع abstractفهذا يعني أنه يمكن ان ننششئ منها classفرعية و لكن ل يمكن ان نكون من abstract classأي كائن.