ההבדל בין מחלקה וממשק בג'אווה

מְחַבֵּר: Laura McKinney
תאריך הבריאה: 2 אַפּרִיל 2021
תאריך עדכון: 13 מאי 2024
Anonim
ההבדל בין מחלקה וממשק בג'אווה - טכנולוגיה
ההבדל בין מחלקה וממשק בג'אווה - טכנולוגיה

תוֹכֶן


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

  1. טבלת השוואה
  2. הגדרה
  3. הבדלים עיקריים
  4. סיכום

טבלת השוואה

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


הגדרת הכיתה

כיתה היא היבט חשוב ביותר בתכנות ג'אווה ללא שיעורים שאינך יכול ליישם תוכנית ג'אווה. כיתה יוצרת סוגי הפניות וסוגי ייחוס אלה משמשים ליצירת אובייקטים. בכיתה יש חתימה וגוף. בחתימת הכיתה יש שם ומידע של הכיתה המספרת האם הכיתה ירשה כיתה אחרת. בגוף הכיתה יש שדות ושיטות הפועלים בשדות אלה. כיתה נוצרת באמצעות מילת מפתח מעמד. מאפשר לראות כיצד להכריז על כיתה.

class class_name {/ * שדות ... שיטות * /}

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

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


הגדרת הממשק

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

ממשק interface_name {type var_name = value; type method1 (רשימת פרמטרים); type method2 (רשימת פרמטרים); . . }

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

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

ההבדלים העיקריים בין המחלקה והממשק בג'אווה

  1. ניתן לייצר כיתה על ידי יצירת האובייקטים שלה. ממשק אינו מופעל אף פעם משום שהשיטות המוצהרות בממשק הן מופשטות ואינן מבצעות שום פעולה, כך שאין כל שימוש בהפעלת ממשק כלשהו.
  2. מחלקה מוכרזת באמצעות כיתת מילות מפתח. באותה דרך נוצר ממשק באמצעות ממשק מילות מפתח.
  3. לחברים בכיתה יכולים להיות מפרטי הגישה כמו ציבוריים, פרטיים, מוגנים. אבל חברי הממשק הם תמיד ציבוריים מכיוון שהם צריכים לגשת אל הכיתות שמיישמים אותם.
  4. השיטות בתוך כיתה מוגדרות לביצוע פעולה בשדות שהוכרזו בכיתה. מכיוון שחסר ממשק בהצהרת שדות, השיטות בתוך הממשק מופשטות לחלוטין.
  5. כיתה יכולה ליישם כל מספר ממשקים אך יכולה להרחיב רק כיתת-על אחת בלבד. ממשק יכול להרחיב כל מספר ממשקים אך אינו יכול ליישם ממשק כלשהו.
  6. בכיתה יש מבנים שהוגדרו בתוכה כדי לאתחל את המשתנה. אך לממשק אין בנאים שכן אין שדות לאתחל. שדות הממשק מאתחלים בעת הכרזתם בלבד.

סיכום:

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