.
שיעור 9 – Object oriented abap – interface
למדנו כבר על הורשה של קלאס אחד מקלאס אחר, אבל מה קורה אם אנחנו רוצים לרשת משני קלאסים, הורשה רגילה לא מאפשרת את זה, עכשיו אחרי שלמדנו על Abstract אנחנו יכולים להבין יותר ברור איך עובד Interface.
אחד השימושים של Interfaces זה שזה מאפשר לנו לרשת ממספר קלאסים.
אז מה זה Interface ולמה אנחנו לומדים אותו אחרי Abstract.
Interface זה קלאס אבסטרקטי טהור, כלומר כל המתודות שנמצאות בו הן אבסטרקטיות ולקלאס אין יישום.
הבדל נוסף הוא שכדי להגדיר Interface אנחנו לא משתמשים במילת מפתח Class אלא במילת המפתח Interface.
עכשיו נראה דוגמא להגדרת Interface.
אפשר לשים לב כאן לשלושה דברים חשובים.
הראשון זה כמו שכבר אמרנו, מילת המפתח הפעם היא INTERFACE ולא CLASS.
השני זה שבInterface אין לנו נראות, כל התכונות ומתודות הן Public.
והשלישי זה שאין לנו את מילת המפתח Declaration, זה מכיוון שאין לנו חלק של יישום.
עכשיו אחרי שיצרנו Interface ניצור קלאס שירש ממנו.
נתחיל בחלק של ההגדרה.
כאן אפשר לראות שאנחנו משתמשים במילת מפתח Interfaces כדי להגדיר את הInterface שהוא ירש.
ועכשיו אחרי שירשנו אנחנו צריכים ליישם את המתודות.
כאן אפשר לראות שכדי לגשת לInterface אנחנו צריכים להשתמש ב‘~’
ועכשיו כדי להשתמש במתודות האלו ניצור אובייקט לקלאס
ולסיום נקרא להם
והפלט יהיה
עכשיו אחרי שראינו איך Interface עובד בצורה לוקלית נעשה אחד גלובלי.
גם הגדרה של Interface עושים בטרנזקציה SE24
ניתן שם לInterface
אחרי שנלחץ על יצירה תקפוץ לנו החלונית הבאה ובה אנחנו נסמן Interface.
ובחלון הבא ניתן תיאור לInterface
עכשיו נרשום בלשונית Methods את המתודות שאנחנו רוצים
ובלשונית הAttributes נרשום את התכונות
עכשיו אחרי שמירה ואקטיבציה יצרנו לנו Interface גלובלי.
עכשיו נכניס אותו לקלאס גלובלי.
ניצור קלאס חדש
.
נעבור ללשונית הInterfaces ונרשום שם את הInrerface שאנחנו רוצים להוסיף
אחרי שמירה אפשר לראות שהתכונות והמתודות יתווספו
וכל מה שנשאר לעשות זה ליישם את המתודות כמו שאנחנו כבר יודעים.
וככה יוצרים Interface גלובלי