ݺߣ
Submit Search
ג'אווה - תכנות מונחה עצמים - ממשקים
•
0 likes
•
3,359 views
מורן אלקובי
Follow
חלק מסדרת הרצאות בנושא "תכנות מונחה עצמים בסביבת ג'אווה", והפעם: ממשקים.
Read less
Read more
1 of 4
Download now
Downloaded 31 times
More Related Content
ג'אווה - תכנות מונחה עצמים - ממשקים
2.
ממשקים-Interfaces בעלות מתודות של
מירושה כתוצאה וקונפליקטים בעיות עוד לא .המרובה ההורשה לנושא ג'אווה של הפתרון הוא ממשק .עבותה מחלקות היררכיית עם מיותרת התעסקות עוד לא .שונות ממחלקות שונים ומימושים זהים שמות מיותר לרשת ניתן לא אמנם.ממשקים של מוגבל בלתי 'מס ליישם ניתן בהחלט אך ,אחת ממחלקה :הבאים החוקים בה שמתקיימים מחלקה כזו ,למחלקה ממשק לדמות ניתן כ מוגדרת להיות חייבת שלה מהמתודות ואחת אחת כל-public abstract כ מוגדר להיות חייב שלה מהמשתנים ואחד אחד כל-static final הוא הרעיוןבמחלקות ממומשים לראות שנרצה )הגדרתן (שאת מתודות ועל )נוכחותם (שאת משתנים על בממשק להצהיר .שהוגדרו בחוקים הממשק מאפייני יעמדו ,הנ"ל השמורות במילים שימוש נעשה לא אם גם .הממשק אותו את יישמו אשר מ זוהי שממשק הרי ,אובייקטים נוצרים ממנה "ל"שבלונה מחלקה דימינו אםתכונות של יותר עוד כללית שבלונה הגדרת עין .הממשק אותו את מיישמת שהיא תצהיר שהיא כך ע"י אליה ""לאמץ יכולה מחלקה שכל ,כזו ,מחלקה ופעולות לחבילה להשתייך יכול ממשק .אחרים ממשקים של הגדרתם את להרחיב יכול וממשק ,מממשק אובייקט ליצור ניתן לא היררכיית של והחוקיותכאן גם עובדת במחלקות שראינו התיקיות–בקובץ ישמר ממשק קובץ ,כלומר ,הידור מבחינת גם סיומת עםjavaסיומת עם לקובץ ויהודרclass.משתייך הוא אליה לחבילה בהתאם התיקיות היררכיית בתוך שישמר מוצהרו אשר הפעולות אותן כל את לממש החובה עליה חלה ,ממשק מממשת שמחלקה ברגעמנת על הממשק באותו ת אבסטרקטית מתודה לפחות תכיל היא ,המתודות כל את תממש לא היא באם .הזו מהמחלקה אובייקט לייצר יהיה שניתן ע"י המממשת המחלקה של ההגדרה בשורת זאת לציין יש כך ובשל לאבסטרקטית כולה המחלקה את שהופך מה ,אחת השמורה המילה הוספתabstract. שהמ לב נשים.מחדש והגדרה לדריסה ניתנים או ,)הסופי המשתנה (ערכי שהם כפי לשימוש ניתנים שתנים במילה שימוש תוך ,מחלקה שמוגדרת כשם תתבצע הממשק הגדרתinterfaceהמילה במקוםclass: public interface InterfaceName { static final varType varName1=value; static final varType varName2=value; public abstract returnType methodName1(); public abstract returnType methodName2(); } :הבא באופן יתבצע מחלקה ע"י הממשק אותו של ומימוש public class ClassName implements InterfaceName { varType varName1; varType final varName2=value;// ניתןבממשק מהגדרתו ערכו את נקבל .אותו להגדיר מבלי זה למשתנה לפנות public returnType methodName1() { } public returnType methodName2() { } }
3.
.בממשק שהופיעו והמשתנים
המתודות של דריסה מבצעים בעצם אנו ,הממשק את מממשים אנו שכאשר נבחין הגדרנו עתה עדoverriding.הנדרס לחתימת זהה תהיה הדורס שחתימת כתנאי שחייבנו כך ,מאותחלים סופיים משתנים להציב עלינו יש הממשק שבהגדרת לב נשים ,מעט משתנה הזו החוקיות ממשק של במימוש חייבות ולא מימוש להכיל יכולות מתודות ,כן כמו .עוד סופיים להיות חייבים אינם המשתנים המממשת במחלקה בעוד ל.אבסטרקטיות הישאר :המימוש על אז ורק הירושה על יוצהר קודם ,אחרת ממחלקה יורשת גם ,המממשת המחלקה אותה אם public class ClassName1 extends ClassName2 implements InterfaceName { } :כך תיראה ההגדרה ,אחד ממשק יותר מממשת המחלקה אותה אם public class ClassName implements InterfaceName1, InterfaceName2, …, InterfaceNameN { } :אחר ממשק של הגדרתו את להרחיב יכול ממשק ,כאמור public interface ExtendingInterface extends InterfaceName { } :מרובים ממשקים של הגדרתם את להרחיב ממשק יכול ,כן כמו public interface ExtendingInterface extends InterfaceName1, InterfaceName2… { } להגדיר ניתן :לדוגמה ,טיפוס כאל תהיה לממשק ההתייחסות שכל ,ומכאן חדש טיפוס של הגדרה מהווה הממשק הגדרת .הממשק מסוג פרמטרים לקבל וניתן הממשק מטיפוס חזרה ערך להחזיר ניתן ,ממשק מטיפוס משתנה דרך גישה כאשר ,הממשק אותו את שמיישמת ממחלקה שנוצר לאובייקט ברפרנס להחזיק יכול ממשק מטיפוס משתנה .המיישמת במחלקה שהוגדרו לכאלו ולא בממשק שהוגדרו ופעולות תכונות כלפי רק תאפשר זה משתנה הו אם גם ,בו שמוגדרים המאפיינים את רק ""לראות מסוגל ממשק מסוג משתנה ,כלומרלאובייקט ברפרנס מחזיק א .יותר ""משוכלל נבצע באם ורק ,להכיל העתיד למשתנה המוכל האובייקט של הרפרנס טיפוס בין התאמה ויש במידה רק אפשרי ההיפך המרתcastingאת שמממשת מחלקה מסוג משתנה בתוך ממשק מסוג לאובייקט רפרנס להציב נרצה אם ,כלומר ,מתאימה חייבים נהיה ,הממשקשהמשתנה ובלבד המממשת המחלקה לסוג ממשק מסוג האובייקט של הרפרנס של המרה לבצע לגבי וכמובן מורישה ממחלקה שיורשת מחלקה לגבי כנ"ל .מממשת מחלקה מסוג לאובייקט ברפרנס מחזיר ממשק מסוג .אליו הרפרנס את רק אלא ,האובייקט את משנה לא כמובן ההמרה .המחלקה מאותה טיפוס ל ניתןהשמורה המילה באמצעות זו התאמה בדוקinstanceof.
4.
:נסביר השמורה במילה להשתמש
ניתן ,מסוים ממשק שמיישמת ממחלקה נוצר אובייקט אם לדעת ע"מinstanceof:הבא באופן if(objectRef instanceof InterfaceName) ==true if it is ==false if it's not מרגעבאופן זאת נעשה .מחלקות של תכונות לסימון "סימון "ממשק יצירת על לדבר גם נכון ,בפנינו פרושה זו שאינדיקציה :הבא interface CanDoOperation { public abstract doOperation(); } :בפנינו הניצבות אפשרויות שתי נציין ,כך ומתוך ב להשתמש נוכל-instanceofבאוביי לטפל ע"ממסוימת בדרך מסוימים קטים כלשהי תכונה בעלת היא שמחלקה לסמן יהיה תפקידו שכל ריק ממשק להגדיר נוכל בהם למקרים הולם טיפול לתת ,כלומר ,ריצה בזמן חריגים של זריקה למנוע ע"מ זה במידע להשתמש נוכלinstanceof אז (שהרי שקר ערך יחזירcastingערך יחזיר בהם למקרים הולם טיפול ולתת )למשל חוקי יהיה לאtrueאת לבצע (ניתן .)ההמרה
Download