public class Undergraduate extends Student
1: //Undergraduate.java
2:
3: public class Undergraduate extends Student
4: {
5: private int level; //1 for freshman, 2 for sophomore,
6: //3 for junior, or 4 for senior.
7:
8: public Undergraduate()
9: {
10: super();
11: level = 1;
12: }
13:
14: public Undergraduate
15: (
16: String initialName, //in
17: int initialStudentNumber, //in
18: int initialLevel //in
19: )
20: {
21: super(initialName, initialStudentNumber);
22: setLevel(initialLevel); //Checks 1 <= initialLevel <= 4
23: }
24:
25: public void reset
26: (
27: String newName, //in
28: int newStudentNumber, //in
29: int newLevel //in
30: )
31: {
32: reset(newName, newStudentNumber); //Student's reset
33: setLevel(newLevel); //Checks 1 <= newLevel <= 4
34: }
35:
36: public int getLevel()
37: {
38: return level;
39: }
40:
41: public void setLevel
42: (
43: int newLevel //in
44: )
45: {
46: if ((1 <= newLevel) && (newLevel <= 4))
47: level = newLevel;
48: else
49: {
50: System.out.println("Illegal level!");
51: System.exit(0);
52: }
53: }
54:
55: public void writeOutput()
56: {
57: super.writeOutput();
58: System.out.println("Student Level: " + level);
59: }
60:
61: public boolean equals
62: (
63: Undergraduate otherUndergraduate //in
64: )
65: {
66: return equals((Student)otherUndergraduate) &&
67: (this.level == otherUndergraduate.level);
68: }
69:
70: /*
71: // Alternate version
72: public boolean equals
73: (
74: Undergraduate otherUndergraduate //in
75: )
76: {
77: return super.equals(otherUndergraduate) &&
78: (this.level == otherUndergraduate.level);
79: }
80: */
81: }