הבדל בין חבילה לממשק ב-Java

תוכן עניינים:

הבדל בין חבילה לממשק ב-Java
הבדל בין חבילה לממשק ב-Java

וִידֵאוֹ: הבדל בין חבילה לממשק ב-Java

וִידֵאוֹ: הבדל בין חבילה לממשק ב-Java
וִידֵאוֹ: Packages in Java | Learn Coding 2024, יולי
Anonim

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

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

מה זה חבילה ב-Java?

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

דוגמה לחבילות ב-Java

כמה חבילות לדוגמה הן כדלקמן. חבילת java.io מכילה את המחלקות התומכות בקלט, פלט. זה כולל File, PrintStream, BufferInputStream וכו'. החבילה java.net מכילה את המחלקות הקשורות לרשת. כמה דוגמאות הן URL, Socket, ServerSocket. החבילה java.awt מכילה את כל המחלקות הנדרשות לבניית ממשקי משתמש גרפיים. אלו כמה חבילות Java API.

כאשר המתכנת רוצה להשתמש במחלקה מסוימת בתוכנית, עליו לייבא את החבילה הזו. אם המתכנת רוצה להשתמש במחלקה BufferInputStream בחבילת java.io, עליו לכתוב את הצהרת import באופן הבא.

import java.util. BufferInoutStream;

הצהרה מתחת תייבא את כל המחלקות בחבילת util.

import java.util.;

אפשר גם ליצור חבילות בהגדרת משתמש.

עובד package;

עובד בכיתה ציבורית {

}

לפי הדוגמה לעיל, העובד הוא שם החבילה. כיתת העובדים היא חלק מחבילת העובדים. קובץ זה נשמר כ-Employee.java בחבילת העובדים.

יתר על כן, ניתן לייבא מחלקה ציבורית מחבילה אחת לאחרת. עיין בדוגמה הבאה.

ההבדל בין חבילה לממשק ב- Java
ההבדל בין חבילה לממשק ב- Java
ההבדל בין חבילה לממשק ב- Java
ההבדל בין חבילה לממשק ב- Java

איור 01: Class A

ההבדל בין חבילה לממשק ב-Java_Figure 2
ההבדל בין חבילה לממשק ב-Java_Figure 2
ההבדל בין חבילה לממשק ב-Java_Figure 2
ההבדל בין חבילה לממשק ב-Java_Figure 2

איור 02: Class B

Class A נמצאת בחבילה 1, והיא מכילה את השיטה הציבורית הנקראת display. Class B נמצאת בחבילה 2, והיא מכילה את השיטה הראשית. למרות שהם באריזות נפרדות; מחלקה B יכולה ליצור אובייקט של מחלקה A על ידי ייבוא חבילה1. לאחר ייבוא חבילה 1, למחלקה B יש גישה לנתונים ולשיטות של מחלקה A.

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

מהו ממשק ב-Java?

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

כאשר מחלקה מרחיבה מחלקה מופשטת, המחלקה החדשה צריכה להגדיר את כל המתודה המופשטת במחלקה המופשטת. במילים אחרות, נניח שלמחלקה מופשטת A יש שיטה מופשטת הנקראת תצוגה. Class B מרחיב את המחלקה A. אז מחלקה B צריכה להגדיר את תצוגת השיטה.

דוגמה לממשק ב-Java

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

ההבדל בין חבילה לממשק ב-Java_Figure 3
ההבדל בין חבילה לממשק ב-Java_Figure 3
ההבדל בין חבילה לממשק ב-Java_Figure 3
ההבדל בין חבילה לממשק ב-Java_Figure 3

איור 03: ממשק A

ההבדל בין חבילה לממשק ב-Java_Figure 4
ההבדל בין חבילה לממשק ב-Java_Figure 4
ההבדל בין חבילה לממשק ב-Java_Figure 4
ההבדל בין חבילה לממשק ב-Java_Figure 4

איור 04: ממשק B

לממשק A יש את השיטה המופשטת display1, ולממשק B יש את השיטה המופשטת display2.

ההבדל בין חבילה לממשק ב-Java_Figure 5
ההבדל בין חבילה לממשק ב-Java_Figure 5
ההבדל בין חבילה לממשק ב-Java_Figure 5
ההבדל בין חבילה לממשק ב-Java_Figure 5

איור 05: Class C

Class C מיישמת גם ממשקי A וגם B. לכן, זה צריך להגדיר את שתי השיטות.

ההבדל העיקרי בין חבילה לממשק ב- Java
ההבדל העיקרי בין חבילה לממשק ב- Java
ההבדל העיקרי בין חבילה לממשק ב- Java
ההבדל העיקרי בין חבילה לממשק ב- Java

איור 06: שיטה ראשית

עכשיו בשיטה הראשית, אפשר ליצור אובייקט של C ולקרוא לשתי השיטות. כמו כן, ממשקים עוזרים ליישם תורשה מרובה ב-Java.

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

מה ההבדל בין חבילה לממשק ב-Java?

Package היא קבוצה של מחלקות קשורות המספקות הגנת גישה וניהול מרחב שמות.ממשק הוא סוג התייחסות הדומה למחלקה שהיא אוסף של שיטות מופשטות. החבילה עוזרת לסווג את השיעורים באופן שיטתי כדי לגשת אליהם ולתחזק אותם בקלות. מצד שני, ממשק עוזר ליישם מספר ירושות ולהשיג הפשטה. זהו ההבדל העיקרי בין חבילה לממשק ב-Java. יתרה מכך, הדרך לכתוב חבילה היא באותיות קטנות כמו java.util, java.awt. אם שם הממשק הוא Area, אז הוא כתוב ב-, interface Area.

ההבדל בין חבילה לממשק ב-Java בצורה טבלאית
ההבדל בין חבילה לממשק ב-Java בצורה טבלאית
ההבדל בין חבילה לממשק ב-Java בצורה טבלאית
ההבדל בין חבילה לממשק ב-Java בצורה טבלאית

סיכום – חבילה לעומת ממשק ב-Java

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

מוּמלָץ: