טוען...
טוען...
לפניכם המחלקות One ו- Two:
java1public class One
2{
3 private static int num = 0;
4 protected int x;
5
6 public One (int n)
7 {
8 this.x = n;
9 num += n;
10 System.out.println ("One 1");
11 }
12
13 public One (int n1, int n2)
14 {
15 this.x = n1+n2;
16 num += n1;
17 System.out.println ("One 2");
18 }
19
20 public int getNum()
21 {
22 return num;
23 }
24
25 public int getX()
26 {
27 return x;
28 }
29
30 public int mul(int n)
31 {
32 return this.x * n;
33 }
34
35 public void add(One other)
36 {
37 this.x += other.x;
38 System.out.println("x = "+ this.x);
39 }
40}
41
42public class Two extends One
43{
44 private int y;
45 public Two (){
46 super(10);
47 this.y = 12;
48 }
49 public Two (int num)
50 {
51 super (num/2);
52 this.y = num;
53 System.out.println ("Second");
54 }
55
56 public int mul()
57 {
58 return this.x * this.y;
59 }
60
61 public void add (One other)
62 {
63 if (other instanceof Two)
64 this.y += ((Two)other).y;
65 System.out.println("y = "+ this.y);
66 }
67}
נתונה המחלקה Tester:
java1public class Tester
2{
3 public static void main(String[] args)
4 {
5 One one1 = new One (1);
6 One one2 = new One (2, 3);
7 One oneTwo = new Two (4);
8 Two two1 = new Two ();
9 Two two2 = new Two (6);
10 // ***
11 }
12}
ציירו את העצמים שנוצרו בפעולה main, וכתבו את הפלט של הפעולה.
הציבו כל אחת מן הפקודות 1–10 שלהלן בפעולה main במקום המצוין לעיל ב־ ***.
כתבו במחברת את מספר הפקודה וציינו אם הקוד תקין או לא תקין.
אם הקוד תקין – כתבו את הפלט, ואם הוא אינו תקין, הסבירו מדוע.
הערה
אין קשר בין הפקודות. כלומר, יש להתייחס לכל פקודה כאילו היא היחידה בפעולה.
java11. System.out.println ("Total = " + one1.getNum());
22. System.out.println ("Total = " + two2.getNum());
33. System.out.println ("mul = " + one1.mul(1));
44. System.out.println ("mul = " + oneTwo.mul());
55. System.out.println ("mul = " + two1.mul());
66. one1.add(oneTwo);
77. two1.add(oneTwo);
88. ((Two)one1).mul();
99. two1 = new One(1,2);
1010. ((One)two1).mul(1);
לפניכם המחלקות One ו- Two:
java1public class One
2{
3 private static int num = 0;
4 protected int x;
5
6 public One (int n)
7 {
8 this.x = n;
9 num += n;
10 System.out.println ("One 1");
11 }
12
13 public One (int n1, int n2)
14 {
15 this.x = n1+n2;
16 num += n1;
17 System.out.println ("One 2");
18 }
19
20 public int getNum()
21 {
22 return num;
23 }
24
25 public int getX()
26 {
27 return x;
28 }
29
30 public int mul(int n)
31 {
32 return this.x * n;
33 }
34
35 public void add(One other)
36 {
37 this.x += other.x;
38 System.out.println("x = "+ this.x);
39 }
40}
41
42public class Two extends One
43{
44 private int y;
45 public Two (){
46 super(10);
47 this.y = 12;
48 }
49 public Two (int num)
50 {
51 super (num/2);
52 this.y = num;
53 System.out.println ("Second");
54 }
55
56 public int mul()
57 {
58 return this.x * this.y;
59 }
60
61 public void add (One other)
62 {
63 if (other instanceof Two)
64 this.y += ((Two)other).y;
65 System.out.println("y = "+ this.y);
66 }
67}
נתונה המחלקה Tester:
java1public class Tester
2{
3 public static void main(String[] args)
4 {
5 One one1 = new One (1);
6 One one2 = new One (2, 3);
7 One oneTwo = new Two (4);
8 Two two1 = new Two ();
9 Two two2 = new Two (6);
10 // ***
11 }
12}
ציירו את העצמים שנוצרו בפעולה main, וכתבו את הפלט של הפעולה.
הציבו כל אחת מן הפקודות 1–10 שלהלן בפעולה main במקום המצוין לעיל ב־ ***.
כתבו במחברת את מספר הפקודה וציינו אם הקוד תקין או לא תקין.
אם הקוד תקין – כתבו את הפלט, ואם הוא אינו תקין, הסבירו מדוע.
הערה
אין קשר בין הפקודות. כלומר, יש להתייחס לכל פקודה כאילו היא היחידה בפעולה.
java11. System.out.println ("Total = " + one1.getNum());
22. System.out.println ("Total = " + two2.getNum());
33. System.out.println ("mul = " + one1.mul(1));
44. System.out.println ("mul = " + oneTwo.mul());
55. System.out.println ("mul = " + two1.mul());
66. one1.add(oneTwo);
77. two1.add(oneTwo);
88. ((Two)one1).mul();
99. two1 = new One(1,2);
1010. ((One)two1).mul(1);