טוען...
טוען...
בחנות משחקים בנו מערכת לניהול המשחקים, ובה המחלקות הבאות: Game, VRGame, ComputerGame, BoardGame.
להלן פירוט תכונות המחלקות:
Game - משחק
תכונות המחלקה:
rate – דירוג, מטיפוס מספר שלםcode – קוד משחק, מטיפוס שלםprice – מחיר משחק, מטיפוס שלםComputerGame - משחק מחשב
תכונות המחלקה:
rate – דירוג, מטיפוס מספר שלםcode – קוד משחק, מטיפוס שלםprice – מחיר משחק, מטיפוס שלםmemory – זיכרון מינימלי, מטיפוס שלםVRGame - משחק מציאות מדומה
תכונות המחלקה:
rate – דירוג, מטיפוס מספר שלםcode – קוד משחק, מטיפוס שלםprice – מחיר משחק, מטיפוס שלםmemory – זיכרון מינימלי, מטיפוס שלםneedVR – האם נדרשים משקפים, מטיפוס בוליאניage – גיל מינימלי לשחקן במשחק, מטיפוס שלםBoardGame - משחק לוח
תכונות המחלקה:
rate – דירוג, מטיפוס מספר שלםcode – קוד משחק, מטיפוס שלםprice – מחיר משחק, מטיפוס שלםplayers – מספר שחקנים מקסימלי במשחק, מטיפוס שלםשרטטו תרשים היררכיה המתאר את הקשר בין המחלקות של המערכת הממוחשבת. יש לסמן ירושה באמצעות החץ.
כתבו את כותרות המחלקות ואת התכונות שלהן על פי עקרונות תכנות מונחה עצמים. הניחו שהפעולות get ו־set קיימות לכל התכונות של המחלקות, ואין צורך למשש אותן.
נתונה כותרת הפעולה הבונה של המחלקה Game:
java1public Game(int price, int code)
אין צורך לממש את הפעולה. דירוג המשחק מאותחל לערך 0.
לפניכם כותרת הפעולה הבונה של המחלקה ComputerGame. הפעולה מקבלת מחיר price, קוד code, וזיכרון מינימלי memory.
java1public ComputerGame (int price, int code, int memory)
ממשו את הפעולה הבונה.
נתונה המחלקה Store – חנות, ולה שתי תכונות:
games – מערך של משחקים, מטיפוס Game בגודל 1000.count – כמות המשחקים במערך.המשחקים נשמרים מתחילת המערך ברצף, אך ייתכן שהמערך אינו מלא עד הסוף. כמו כן, המערך אינו ממויין.
כתבו פעולה פנימית ששמה avgRate במחלקה Store המקבלת מספר המייצג סוג המשחק:
1 – מייצג את המשחק VRGame.2 – מייצג את המשחק ComputerGame.הפעולה מחזירה מספר ממשי המייצג את ממוצע הדירוגים של כל המשחקים מאותו סוג בחנות.
⚠ הערה — אילוץ מחייב
הניחו שקיים במערך לפחות משחק אחד מכל סוג.
בחנות משחקים בנו מערכת לניהול המשחקים, ובה המחלקות הבאות: Game, VRGame, ComputerGame, BoardGame.
להלן פירוט תכונות המחלקות:
Game - משחק
תכונות המחלקה:
rate – דירוג, מטיפוס מספר שלםcode – קוד משחק, מטיפוס שלםprice – מחיר משחק, מטיפוס שלםComputerGame - משחק מחשב
תכונות המחלקה:
rate – דירוג, מטיפוס מספר שלםcode – קוד משחק, מטיפוס שלםprice – מחיר משחק, מטיפוס שלםmemory – זיכרון מינימלי, מטיפוס שלםVRGame - משחק מציאות מדומה
תכונות המחלקה:
rate – דירוג, מטיפוס מספר שלםcode – קוד משחק, מטיפוס שלםprice – מחיר משחק, מטיפוס שלםmemory – זיכרון מינימלי, מטיפוס שלםneedVR – האם נדרשים משקפים, מטיפוס בוליאניage – גיל מינימלי לשחקן במשחק, מטיפוס שלםBoardGame - משחק לוח
תכונות המחלקה:
rate – דירוג, מטיפוס מספר שלםcode – קוד משחק, מטיפוס שלםprice – מחיר משחק, מטיפוס שלםplayers – מספר שחקנים מקסימלי במשחק, מטיפוס שלםשרטטו תרשים היררכיה המתאר את הקשר בין המחלקות של המערכת הממוחשבת. יש לסמן ירושה באמצעות החץ.
כתבו את כותרות המחלקות ואת התכונות שלהן על פי עקרונות תכנות מונחה עצמים. הניחו שהפעולות get ו־set קיימות לכל התכונות של המחלקות, ואין צורך למשש אותן.
נתונה כותרת הפעולה הבונה של המחלקה Game:
java1public Game(int price, int code)
אין צורך לממש את הפעולה. דירוג המשחק מאותחל לערך 0.
לפניכם כותרת הפעולה הבונה של המחלקה ComputerGame. הפעולה מקבלת מחיר price, קוד code, וזיכרון מינימלי memory.
java1public ComputerGame (int price, int code, int memory)
ממשו את הפעולה הבונה.
נתונה המחלקה Store – חנות, ולה שתי תכונות:
games – מערך של משחקים, מטיפוס Game בגודל 1000.count – כמות המשחקים במערך.המשחקים נשמרים מתחילת המערך ברצף, אך ייתכן שהמערך אינו מלא עד הסוף. כמו כן, המערך אינו ממויין.
כתבו פעולה פנימית ששמה avgRate במחלקה Store המקבלת מספר המייצג סוג המשחק:
1 – מייצג את המשחק VRGame.2 – מייצג את המשחק ComputerGame.הפעולה מחזירה מספר ממשי המייצג את ממוצע הדירוגים של כל המשחקים מאותו סוג בחנות.
⚠ הערה — אילוץ מחייב
הניחו שקיים במערך לפחות משחק אחד מכל סוג.