-
Notifications
You must be signed in to change notification settings - Fork 0
/
Assignment10.java
101 lines (65 loc) · 1.39 KB
/
Assignment10.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
//1
public class MyParent {
private int someNum;
private OtherClass obj;
public MyParent(int i) {
someNum = I;
obj = null;
}
public MyParent(int i, OtherClass oc) {
someNum = i;
obj = new OtherClass(oc);
}
public MyParent(MyParent mp) {
someNum = mp.someNum;
obj = new OtherClass(mp.obj);
}
public boolean equals(Object o) {
if(obj == null) return false;
if(!(this.getClass() == o.getClass())) return false;
MyParent mp = (MyParent)o;
if(this.someNum == mp.someNum && this.obj.equals(mp.obj)) return true;
return false;
}
public toString() {
return “This is a MyParent.”;
}
}
//2
public class MyChild extends MyParent{
private char type;
public MyChild(char c, int i) {
super(i);
type = c;
}
public MyChild(char c, int i, OtherClass o) {
super(i, o);
type = c;
}
public MyChild(MyChild m) {
super(m);
type = m.type;
}
public char getType() return type;
}
//3
public class Number3 {
public static void main(String args[]) {
MyParent mp[] = new MyParent[10];
char ch = 'A';
for(int i = 0; i < 10; i++) {
if((int)(Math.random()*2) == 0)
mp[i] = new MyParent(i, new OtherClass());
else {
mp[i] = new MyChild(ch , i, new OtherClass());
ch++;
}
}
}
}
//4
for (int i = 0; i < 10; i++) {
if(mp[i] instanceof MyChild) {
System.out.println(((MyChild)mp[i]).getType());
}
}