הבדל בין שיעור מופשט לשיעור בטון

הבדל בין שיעור מופשט לשיעור בטון
הבדל בין שיעור מופשט לשיעור בטון

וִידֵאוֹ: הבדל בין שיעור מופשט לשיעור בטון

וִידֵאוֹ: הבדל בין שיעור מופשט לשיעור בטון
וִידֵאוֹ: What is a Proxy Server? 2024, נוֹבֶמבֶּר
Anonim

שיעור מופשט לעומת שיעור בטון

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

מה זה מחלקת בטון?

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

מה זה שיעור מופשט?

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

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

מה ההבדל בין שיעור מופשט לשיעור בטון?

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

מוּמלָץ: