Files
oop/assignment4/Question5/MajorRequired.java
2022-04-21 15:43:38 +08:00

58 lines
1.9 KiB
Java

/*
* Author: CHEN Yongyuan (Walter) 1930006025 from OOP(1007)
* Date: 2022-04-18
* Description: This is the MajorRequired class which is used to store the major and required courses.
*/
public class MajorRequired extends Course {
/**
* Constructor.
*
* @param code The code of the course.
* @param title The title of the course.
* @param preRequisite The pre-requisite of the course. Type of MajorRequired
* and cannot be null.
*/
public MajorRequired(String code, String title, Learnable preRequisite) {
super(code, title, preRequisite);
}
/**
* MajorRequired course is required for all students.
*
* @return true
*/
@Override
public boolean isRequired() {
return true;
}
/**
* Test.
*/
public static void testMajorRequired() {
MajorRequired mr1 = new MajorRequired("COMP3013", "Database Management System", null);
System.out.println(mr1.getCode() == null);
System.out.println(mr1.getTitle() == null);
System.out.println(mr1.getPreRequisite() == null);
System.out.println(mr1.isRequired() == true);
MajorRequired mr2 = new MajorRequired("COMP3013", "Database Management System", mr1);
System.out.println(mr2.getCode() == "COMP3013");
System.out.println(mr2.getTitle() == "Database Management System");
System.out.println(mr2.getPreRequisite() == mr1);
System.out.println(mr2.isRequired() == true);
Base base = new Base("COMP4023", "Software Engineering");
System.out.println(base.getCode() == "COMP4023");
System.out.println(base.getTitle() == "Software Engineering");
System.out.println(base.getPreRequisite() == base);
MajorRequired mr3 = new MajorRequired("COMP4101", "Quality Assurance", base);
System.out.println(mr3.getCode() == "COMP4101");
System.out.println(mr3.getTitle() == "Quality Assurance");
System.out.println(mr3.getPreRequisite() == base);
System.out.println(mr3.isRequired() == true);
}
}