נתונות 2 המחלקות הבאות:
public class AA{
public AA(){
System.out.println("AA constructor");
}
public void one() {
System.out.println("one in AA");
}
public void two() {
one();
}
}
public class BB extends AA{
public BB(){
System.out.println("BB constructor");
}
public void one(){
System.out.println("one in BB");
}
public void two() {
System.out.println("two in BB");
}
public void three() {
super.two();
}
}
(א)נתון קטע הקוד הבא (מספרי שורות אינם חלק מהקוד):
```java
(1) AA a = new AA();
(2) BB b = new BB();
(3) AA ab = new BB();
(4) a.one();
(5) ab.one();
(6) b.one();
(7) a.two();
(8) ab.two();
(9) b.two();
(10) ((BB)(ab)).three();
(11) b.three();
```
1. עקבו אחרי ביצוע קטע הקוד ורשמו מה יהיה הפלט.
2. האם אפשר להוסיף לקטע הקוד את 2 הפקודות הבאות? הסבירו את תשובתכם:
```java
a.three();
((BB)a).three();
```
```java
(1) AA a = new AA();
(2) BB b = new BB();
(3) AA ab = new BB();
(4) a.one();
(5) ab.one();
(6) b.one();
(7) a.two();
(8) ab.two();
(9) b.two();
(10) ((BB)(ab)).three();
(11) b.three();
```
1. עקבו אחרי ביצוע קטע הקוד ורשמו מה יהיה הפלט.
2. האם אפשר להוסיף לקטע הקוד את 2 הפקודות הבאות? הסבירו את תשובתכם:
```java
a.three();
((BB)a).three();
```
(ב)כתבו פעולה המקבלת מערך הפניות לעצמים מסוג Object. הפעולה תדפיס כמה עצמים הם מסוג BB, כמה עצמים הם מסוג AA ולא סוג BB, וכמה עצמים הם לא מסוג AA.
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה בטיחות
שאלו כאן — ותקבלו מענה מוסמך.
רוצים לתרגל אלפי שאלות נוספות?
המשיכו לתרגול מלא עם משוב אישי ←מבחני מה"ט אמיתיים · משוב מיידי · וידאו לכל נושא · מעקב התקדמות