טוען...
טוען...
בחברה להשכרת כלי רכב "סעו לשלום" פותחה מערכת ממוחשבת שבה המחלקות: Contract — חוזה, Vehicle — כלי רכב, Car — מכונית, Truck — משאית, Motorcycle — אופנוע.
להלן פירוט תכונות המחלקות:
| שם התכונה | טיפוס | משמעות |
|---|---|---|
| name | מחרוזת | שם לקוח |
| days | שלם | מספר ימי השכרה |
| kilo | שלם | מספר הקילומטרים שנסע הלקוח |
| שם התכונה | טיפוס | משמעות |
|---|---|---|
| id | מחרוזת | מזהה כלי רכב |
| contract | Contract | חוזה |
| שם התכונה | טיפוס | משמעות |
|---|---|---|
| id | מחרוזת | מזהה כלי רכב |
| contract | Contract | חוזה |
| seats | שלם | מספר מקומות ישיבה |
| שם התכונה | טיפוס | משמעות |
|---|---|---|
| id | מחרוזת | מזהה כלי רכב |
| contract | Contract | חוזה |
| max | שלם | משקל מקסימלי להעמסה |
| שם התכונה | טיפוס | משמעות |
|---|---|---|
| id | מחרוזת | מזהה כלי רכב |
| contract | Contract | חוזה |
| offRoad | בוליאני | אמת אם האופנוע הוא אופנוע שטח, אחרת שקר |
התעריפים: התעריף הבסיסי שהחברה גובה על השכרת כלי רכב (Vehicle) הוא 60 שקלים ליום השכרה ו-2 שקלים לכל קילומטר של נסיעה.
| כלי רכב | מחיר ההשכרה |
|---|---|
מכונית (Car) | לפי התעריף הבסיסי |
משאית (Truck) | לפי התעריף הבסיסי, ונוסף על כך סכום חד-פעמי של 500 שקלים |
אופנוע (Motorcycle) | מחצית מן התעריף הבסיסי |
סרטטו תרשים הייררכייה המתאר את הקשר בין המחלקות של המערכת הממוחשבת.
כתבו את כותרות המחלקות ואת התכונות שלהן. הניחו שהפעולות get ו-set קיימות בכל התכונות של המחלקות, ואין צורך לממש אותן.
נתונה הפעולה הבונה של המחלקה Contract (אין צורך לממש אותה):
java1public Contract (String name, int days, int kilo)
(1) לפניכם כותרת הפעולה הבונה של המחלקה Vehicle. הפעולה מקבלת שם לקוח, מספר ימי השכרה, מספר קילומטרים שנסע הלקוח ומזהה כלי רכב. ממשו את הפעולה הבונה:
java1public Vehicle (String name, int days, int kilo, String id)
(2) לפניכם כותרת הפעולה הבונה של המחלקה Car. הפעולה מקבלת שם לקוח, מספר ימי השכרה, מספר קילומטרים שנסע הלקוח, מזהה כלי רכב ומספר מקומות ישיבה. ממשו את הפעולה הבונה:
java1public Car (String name, int days, int kilo, String id, int seats)
הפעולה payment מחזירה מספר ממשי השווה לסכום שהלקוח נדרש לשלם בעבור כל אחד מסוגי כלי הרכב שהחברה משכירה (בהתאם לעצם שזימן את הפעולה).
(1) כתבו את הפעולה payment במחלקה Vehicle (כאמור לעיל, הסכום לתשלום הוא לפי התעריף הבסיסי).
(2) הוסיפו את הפעולה payment במחלקה/ות האחרות כדי לבצע את הנדרש (רק במחלקות שיש בהן צורך), לפי העקרונות של תכנות מונחה עצמים.
⚠ הערה — אילוץ מחייב
אין להשתמש בפעולה
instanceOfבסעיף זה ובפעולות של המחלקהObjectואין לשנות את תכונות המחלקות. פתרון הכולל שימושים כאלה לא יזוכה בנקודות.
בחברה להשכרת כלי רכב "סעו לשלום" פותחה מערכת ממוחשבת שבה המחלקות: Contract — חוזה, Vehicle — כלי רכב, Car — מכונית, Truck — משאית, Motorcycle — אופנוע.
להלן פירוט תכונות המחלקות:
| שם התכונה | טיפוס | משמעות |
|---|---|---|
| name | מחרוזת | שם לקוח |
| days | שלם | מספר ימי השכרה |
| kilo | שלם | מספר הקילומטרים שנסע הלקוח |
| שם התכונה | טיפוס | משמעות |
|---|---|---|
| id | מחרוזת | מזהה כלי רכב |
| contract | Contract | חוזה |
| שם התכונה | טיפוס | משמעות |
|---|---|---|
| id | מחרוזת | מזהה כלי רכב |
| contract | Contract | חוזה |
| seats | שלם | מספר מקומות ישיבה |
| שם התכונה | טיפוס | משמעות |
|---|---|---|
| id | מחרוזת | מזהה כלי רכב |
| contract | Contract | חוזה |
| max | שלם | משקל מקסימלי להעמסה |
| שם התכונה | טיפוס | משמעות |
|---|---|---|
| id | מחרוזת | מזהה כלי רכב |
| contract | Contract | חוזה |
| offRoad | בוליאני | אמת אם האופנוע הוא אופנוע שטח, אחרת שקר |
התעריפים: התעריף הבסיסי שהחברה גובה על השכרת כלי רכב (Vehicle) הוא 60 שקלים ליום השכרה ו-2 שקלים לכל קילומטר של נסיעה.
| כלי רכב | מחיר ההשכרה |
|---|---|
מכונית (Car) | לפי התעריף הבסיסי |
משאית (Truck) | לפי התעריף הבסיסי, ונוסף על כך סכום חד-פעמי של 500 שקלים |
אופנוע (Motorcycle) | מחצית מן התעריף הבסיסי |
סרטטו תרשים הייררכייה המתאר את הקשר בין המחלקות של המערכת הממוחשבת.
כתבו את כותרות המחלקות ואת התכונות שלהן. הניחו שהפעולות get ו-set קיימות בכל התכונות של המחלקות, ואין צורך לממש אותן.
נתונה הפעולה הבונה של המחלקה Contract (אין צורך לממש אותה):
java1public Contract (String name, int days, int kilo)
(1) לפניכם כותרת הפעולה הבונה של המחלקה Vehicle. הפעולה מקבלת שם לקוח, מספר ימי השכרה, מספר קילומטרים שנסע הלקוח ומזהה כלי רכב. ממשו את הפעולה הבונה:
java1public Vehicle (String name, int days, int kilo, String id)
(2) לפניכם כותרת הפעולה הבונה של המחלקה Car. הפעולה מקבלת שם לקוח, מספר ימי השכרה, מספר קילומטרים שנסע הלקוח, מזהה כלי רכב ומספר מקומות ישיבה. ממשו את הפעולה הבונה:
java1public Car (String name, int days, int kilo, String id, int seats)
הפעולה payment מחזירה מספר ממשי השווה לסכום שהלקוח נדרש לשלם בעבור כל אחד מסוגי כלי הרכב שהחברה משכירה (בהתאם לעצם שזימן את הפעולה).
(1) כתבו את הפעולה payment במחלקה Vehicle (כאמור לעיל, הסכום לתשלום הוא לפי התעריף הבסיסי).
(2) הוסיפו את הפעולה payment במחלקה/ות האחרות כדי לבצע את הנדרש (רק במחלקות שיש בהן צורך), לפי העקרונות של תכנות מונחה עצמים.
⚠ הערה — אילוץ מחייב
אין להשתמש בפעולה
instanceOfבסעיף זה ובפעולות של המחלקהObjectואין לשנות את תכונות המחלקות. פתרון הכולל שימושים כאלה לא יזוכה בנקודות.