תוכן עניינים:
הגדרה - מה המשמעות של עומס יתר?
עומס יתר מתייחס ליכולת להשתמש במזהה בודד להגדרת שיטות מרובות בכיתה השונות בפרמטרי הקלט והפלט שלהם. בדרך כלל משתמשים בשיטות עמוסות יתר כאשר הן מבצעות את אותה משימה באופן קונספטואלי אך עם קבוצה שונה מעט של פרמטרים.
עומס יתר הוא מושג המשמש למניעת קוד מיותר בו משתמשים באותו שיטה מספר פעמים אך עם קבוצה שונה של פרמטרים. השיטה בפועל שמתקבלת בזמן ריצה נפתרת בזמן ההרכבה, ובכך נמנעת משגיאות זמן ריצה. עומס יתר מספק בהירות קוד, מבטל את המורכבות ומשפר את ביצועי זמן הריצה.
Techopedia מסביר עומס יתר
עומס יתר משמש בשפות תכנות אשר אוכפות בדיקת סוג בשיחות פונקציה במהלך ההרכבה. כאשר עומס יתר על שיטה, השיטה שנבחרה תיבחר בזמן ההרכבה. זה לא זהה לפונקציות וירטואליות בהן מוגדרת השיטה בזמן ריצה.
שלא כמו Java, C # מאפשר להעמיס יתר על המפעילים, בנוסף לשיטות, על ידי הגדרת חברים סטטיים באמצעות מילת המפתח של המפעיל. תכונה זו מסייעת להרחיב ולהתאים אישית את סמנטיקה של מפעילים הרלוונטיים לסוגים המוגדרים על ידי המשתמש, כך שניתן להשתמש בהם כדי לתפעל מופעי אובייקט עם מפעילים.
רזולוציית עומס היתר ב- C # היא השיטה בה נבחר הפונקציה הנכונה על בסיס טיעונים שהועברו ורשימת חברי פונקציות המועמדים בעלי שם זהה. ההקשרים השונים שבהם משתמשים ברזולוציית עומס היתר כוללים:
- קריאה של שיטה בביטוי
- בנאי במהלך יצירת אובייקטים
- אביזר אינדקס דרך גישה אלמנט וביטוי מפעיל מוגדר מראש או מוגדר על ידי משתמש
מומלץ להימנע מעומס יתר על גבולות הירושה מכיוון שזה יכול לגרום לבלבול. עומס יתר יכול להיות מסורבל למפתחים אם משתמשים בו בצורה מוגזמת ועם סוגים המוגדרים על ידי המשתמש כפרמטרים מכיוון שהוא יכול להפחית את הקריאות ואת תחזוקת הקוד.
