מדריך לממשקים פנימיים בג'אווה

1. הקדמה

במדריך קצר זה, נבחן ממשקים פנימיים ב- Java. הם משמשים בעיקר ל:

  • פתרון בעיית רווח השמות כאשר לממשק יש שם משותף
  • הגדלת האקפסולציה
  • הגדלת הקריאות על ידי קיבוץ ממשקים קשורים במקום אחד

דוגמה ידועה היא כְּנִיסָה ממשק המוכרז בתוך מַפָּה מִמְשָׁק. מוגדר כך, הממשק אינו בהיקף גלובלי, והוא מכונה מפה. כניסה מבדיל אותו מאחרים כְּנִיסָה ממשקים והפיכת הקשר שלה אל מַפָּה ברור.

2. ממשקים פנימיים

בהגדרה, הצהרה על ממשק פנימי מתרחשת בגוף של ממשק או מחלקה אחרת.

הם ציבוריים וסטטיים באופן מובהק, כמו גם שדותיהם כאשר הם מוצהרים בממשק אחר (בדומה להצהרות שדה בממשקים ברמה העליונה), וניתן ליישם אותם בכל מקום:

ממשק ציבורי לקוח {// ... רשימת ממשקים {// ...}}

ממשקים פנימיים שהוכרזו בתוך מעמד אחר הם גם סטטיים, אך הם יכולים לקבל מפרט גישה שיכולים להגביל היכן ניתן ליישם אותם:

לקוח ברמה ציבורית {ממשק ציבורי רשימת {void add (לקוח לקוח); מחרוזת getCustomerNames (); } // ...}

בדוגמה לעיל יש לנו a רשימה ממשק שישמש כמכריז על פעולות מסוימות ברשימת לקוחות כגון הוספת חדשים, קבלת א חוּט ייצוג וכן הלאה.

רשימה הוא שם נפוץ, וכדי לעבוד עם ספריות אחרות המגדירות ממשק זה, עלינו להפריד בין ההצהרה שלנו, כלומר מרחב שמות זה.

זה המקום בו אנו משתמשים בממשק פנימי אם איננו רוצים להשתמש בשם חדש כמו רשימת לקוחות.

שמרנו יחד שני ממשקים קשורים המשפרים את האקפסולציה.

לבסוף, אנו יכולים להמשיך ביישום זה:

מחלקה ציבורית CommaSeparatedCustomers מיישם את Customer.List {// ...}

3. מסקנה

הסתכלנו במהירות על ממשקים פנימיים בג'אווה.

כמו תמיד, ניתן למצוא דוגמאות קוד ב- GitHub.


$config[zx-auto] not found$config[zx-overlay] not found