סעיף א' (10 נק'): נתון main עם ארבע השמות/הטלות בין ארבע מחלקות One/Two/Three/Four; לכל אחת מחמש אפשרויות עץ-ירושה מועמדות יש לקבוע אם main תקינה, נכשלת בהידור, או נכשלת בזמן ריצה. סעיף ב' (6 נק', ללא קשר לסעיף א'): היררכיית Point<-Circle<-Cylinder עם שרשרת toString/ToString — יש להשלים בונים ודריסות כך שהפלט יהיה 'x = 1, radius = 2' ו-'x = 10, radius = 20, height = 30'.
סעיף א' (10 נק'): נתון main עם ארבע השמות/הטלות בין ארבע מחלקות One/Two/Three/Four; לכל אחת מחמש אפשרויות עץ-ירושה מועמדות יש לקבוע אם main תקינה, נכשלת בהידור, או נכשלת בזמן ריצה. סעיף ב' (6 נק', ללא קשר לסעיף א'): היררכיית Point<-Circle<-Cylinder עם שרשרת toString/ToString — יש להשלים בונים ודריסות כך שהפלט יהיה 'x = 1, radius = 2' ו-'x = 10, radius = 20, height = 30'.
קטע הקוד מ-main (סעיף א') — זהה משמעותית בשתי השפות (Java: main, String[]; C#: Main, string[]).
Three x1 = new One();
Two x2 = (Two)(new One());
Two x3 = new Four();
One x4 = new Four();
נתונה הפעולה main במחלקה Driver (ראו את קטע הקוד למעלה). נתונות חמש האפשרויות לעץ הירושה הכולל את המחלקות One, Two, Three, Four:
- Three יורשת מ-One, Two יורשת מ-One, Four יורשת מ-One
- Three יורשת מ-One, Two יורשת מ-One, Four יורשת מ-Two
- One יורשת מ-Three, Four יורשת מ-Two, Three יורשת מ-Two
- One יורשת מ-Three, Three יורשת מ-Two, Four יורשת מ-One
- One יורשת מ-Three, Two יורשת מ-One, Four יורשת מ-One עבור כל אחת מהאפשרויות 1-5 ציירו עץ ירושה וכתבו אם הפעולה main תהיה תקינה או תתרחש שגיאת הידור (קומפילציה) או שגיאת זמן ריצה. הסבירו את תשובתכם.
(אין קשר לסעיף א'). נתונות שלוש המחלקות הבאות: Point (מתארת נקודה על ציר ה-X), Circle (מעגל עם מרכז על ציר ה-X, יורשת מ-Point), Cylinder (גליל, יורשת מ-Circle) — ראו את קוד המחלקות למעלה. נתונה הפעולה main הבאה: Circle b = new Circle (1, 2); System.out.println(b); Cylinder c = new Cylinder (10, 20, 30); System.out.println(c); השלימו את הפעולות החסרות במחלקות Cylinder ו-Circle כך שפלט הפעולה main יהיה: x = 1, radius = 2 x = 10, radius = 20, height = 30
public Circle(int x, int radius) / public String toString() — public Cylinder(int x, int radius, int height)
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.