Want to create interactive content? It’s easy in Genially!

Get started free

פולימורפיזם

בלינדה

Created on April 26, 2021

Start designing with a free template

Discover more than 1500 professional designs like these:

Christmas Spirit Test

Corporate Icebreaker

Retro Bits Quiz

Bomb Quiz

Witchcraft Quiz

Halloween Quiz

Day of the Dead Quiz

Transcript

מדעי המחשב - תכנות מונחה עצמים

Polymorphism

תרגול פולימורפיזם

שאלה 1 מתוך 10

חברת "צעצועים זה הם" מעונינת למחשב את מאגר הצעצועים במחסן שלה. כדי לעשות זאת הוגדרו שתי מחלקות בעבור שני סוגים של צעצועים: המחלקה Doll בעבור בובות והמחלקה Car בעבור מכוניות צעצוע. הוגדרה מחלקה חדשה Toy שהמחלקות Car ו Doll יורשות ממנה. כיצד יראה עץ הירושה של חברת "צעצועים זה הם"

sdfsdf fsd answer

answer one two

sdfsdf ff answer

Right!

Next

שאלה 2 מתוך 10

במחלקה Doll הוגדרו התכונות הבאות: שם הבובה(string name), מחיר הבסיס של הבובה(double basePrice), צבע שיער( string color), מספר האביזרים המצורפים(int accNums), מחיר לאביזר(double accPrice)לכל האביזרים מחיר זהה. במחלקה Car הוגדרו התכונות הבאות: שם מכונית הצעצוע(string name), מחיר הבסיס של המכונית(double basePrice), סיווג גודל המכונית(int num) 0-מכונית קטנה, 1 - מכונית בינונית, 2 - מכונית גדולה, צבע המכונית (string color). כיצד אמורה להיראות המחלקה Toy.

public class Toy{ protected stirng name; protected double basePrice; protected int num; }

public class Toy { protected stirng name; protected double basePrice; protected string color; }

public class Toy { protected stirng name; protected int basePrice; protected string color; }

Right!

Next

שאלה 3 מתוך 10

במחלקה Doll הוגדרה הפעולה Price שמחזירה את מחיר הבובה לצרכן. מחיר הבובה לצרכן הוא מחיר הבסיס שלה, בתוספת מחיר האביזרים (המחושב לפי מספר האביזרים כפול המחיר לאביזר). במחלקה Car הוגדרה הפעולה Price שמחזירה את מחיר המכונית לצרכן. מחיר המכונית לצרכן נקבע עלפי גודלה, המחיר של מכונית קטנה הוא מחיר הבסיס, המחיר לצרכן של מכונית בינונית הוא מחיר בסיס + 15 ש"ח, המחיר לצרכן של מכונית גדולה הוא מחיר הבסיס + 30 ש"ח. חשבו תוך הקפדה על עיקרון הירושה כיצד הייתם כותבים את הפעולה price בכל אחת מן המחלקות בעץ הירושה ?

נכתוב את הפעולה Price במחלקה Doll ובמחלקה Car ונשתמש ב-base כדי להשתמש בתכונה basePrice שנמצאת במחלקת העל Toy.

נכתוב פעולה Price במחלקה Doll ובמחקלה Car. הפעולות שנכתוב תקראנה לתכונה basePrice ממחלקת העל לצורך חישוב המחיר לצרכן.

נכתוב פעולה Price במחלקה Toy שמחשבת את מחיר הבובה והמכונית לצרכן.

Right!

Next

שאלה 4 מתוך 5

במחלקה Doll הוגדרה הפעולה Price שמחזירה את מחיר הבובה לצרכן. מחיר הבובה לצרכן הוא מחיר הבסיס שלה(basePrice), בתוספת מחיר האביזרים (המחושב לפי מספר האביזרים, accNum כפול המחיר לאביזר, accPrice). כיצד תראה הפעולה Price במחלקה Doll ?

public double Price() { return this.basePrice * this.accPrice * this.accNum; }

public double Price() { return this.basePrice + this.accPrice + this.accNum; }

public double Price(){ return this.basePrice + this.accPrice * this.accNum;}

Right!

Next

שאלה 5 מתוך 10

במחלקה Car הוגדרה הפעולה Price שמחזירה את מחיר המכונית לצרכן. מחיר המכונית לצרכן נקבע עלפי גודלה(size, מכונית קטנה - 0, מכונית בינונית - 1, מכונית גדולה - 2), המחיר של מכונית קטנה הוא מחיר הבסיס, המחיר לצרכן של מכונית בינונית הוא מחיר בסיס + 15 ש"ח, המחיר לצרכן של מכונית גדולה הוא מחיר הבסיס + 30 ש"ח. כיצד תראה הפעולה Price במחלקה Car ?

public double Price() { return this.basePrice + this.size + 15; }

public double Price() { return this.basePrice + this.size * 2; }

public double Price(){return this.basePrice + this.size * 15;}

Right!

Next

שאלה 6 מתוך 10

במחלקות Doll, ו - Car הוגדרה הפעולה UpdatePrice שמעדכנת את המחיר של הבובה ושל המכונית באופן הבא: עדכון מחיר הבסיס על ידי הגדלתו ב - p אחוזים. p הוא מספר ממשי המתקבלת כפרמטר. היכן כדאי לממש את הפעולה UpdatePrice ?

במחלקה Doll ונוריש אותה למחלקה Car

בכל אחת מהמחלקות Car ו-Doll

במחלקת העל Toy

more then half way

Right!

Next

יפה - מסיבת "כמעט הסוף"

שאלה 7 מתוך 10

בחרו את שורת הקוד הנכונה:

Car c = new Car("police",30,""black", 1); Toy t = c; int s = t.GetSize();

Car c = new Car("police",30,""black", 1); Toy t = c; int s = ((Car)t).GetSize();

Car c = new Car("police",30,""black", 1); Toy t = c; int s = (Car)t.GetSize();

Right!

Next

שאלה 8 מתוך 10

בחרו את שורת הקוד הנכונה:

Doll d = new Doll("Bella",30,"black",2,5); Toy t = d; int s = (Doll)t.GetAccNum();

Doll d = new Doll("Bella",30,"black",2,5);Toy t = d; int s = ((Doll)t).GetAccNum();

Doll d = new Doll("Bella",30,"black",2,5); Toy t = d; int s = t.GetAccNum();

Right!

Next

שאלה 9 מתוך 10

סמנו את שורת הקוד בה מתבצעת המרה חוקית כלפי מעלה

Car = new Car("aaa",30,2); Doll d = c;

Car = new Car("aaa",30,2);Toy t = c;

Toy t = new Toy("bbb",30); Car c = t;

Right!

Next

שאלה 10 מתוך 10

:סמנו את שורת הקוד בה מתבצעת המרה חוקית כלפי מטה

Car c = new Car("aaa",30,2); Toy t = c;Car c1 = (Car)t;

Car c = new Car("aaa",30,2);Doll d = (Doll)c;

Toy t = new Toy("bbb",30);Car c = t;

Right!

לחצו לקבלת הפרס

כל הכבוד !

"הצלחה היא מסע - לא יעד"