ממשק (תכנות) – הבדלי גרסאות

נוספו 2 בתים ,  לפני 9 שנים
מ
bool DoThat(int a);
}</source>
וזהו קטע קוד של אובייקט שממששמממש את הממשק, כלומר מכיל שתי מתודות כפי שצויין:
<source lang="csharp">
public class MyClass: Idostuff
</source>
 
הקונבנציה (המוסכמה בתחום) בעולם התוכנה היא שממשק תמיד יתחיל באות I, ולאחר מכן תיאור של החוזה. לדוגמה: ICanRead, ICanLearn וכו'. לאובייקטים שיממשו את החוזה יהיה מטודותמתודות בלי התחילת I, למשל CanRead ו-CanLearn.
 
אובייקט יכול לממשק מספר אינסופי של ממשקים וכך לענות על מספר דרישות. השימוש בממשק יכול לעזור לעקוף [[ירושה (מדעי המחשב)|עץ ירושה]] של אובייקטים. למשל, אם קיים אובייקט של Person שיורש מאובייקט Mammls, ואובייקט אחר בשם Table שיורש מאובייקט של SolidItems, אז ניתן באמצעות ממשק ליצור לשני האובייקטים מטודות דומות. כלומר, אין צורך שהאדם יירש תכונות ממחלקת החפצים המוצקים, ולהיפך, אין צורך להצהיר שהשולחן יירש תכונות ממחלקת היונקים.