52 lines
1022 B
Java
52 lines
1022 B
Java
/*
|
|
* Author: CHEN Yongyuan (Walter) 1930006025 from OOP(1007)
|
|
* Date: 2022-04-18
|
|
* Description: This is the ManyCourses class.
|
|
*/
|
|
|
|
import java.util.ArrayList;
|
|
|
|
public class ManyCourses {
|
|
private ArrayList<Learnable> courses;
|
|
|
|
/**
|
|
* Constructor.
|
|
*/
|
|
public ManyCourses() {
|
|
courses = new ArrayList<Learnable>();
|
|
}
|
|
|
|
/**
|
|
* Add a course to the list.
|
|
*
|
|
* @param course
|
|
*/
|
|
public void addCourse(Learnable c) {
|
|
courses.add(c);
|
|
}
|
|
|
|
/**
|
|
* Prints on the screen the course code and title.
|
|
*/
|
|
public void listCourses() {
|
|
for (Learnable c : courses) {
|
|
System.out.println(
|
|
String.format("%s, %s", c.getCode(), c.getTitle()));
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Test.
|
|
*/
|
|
public static void testManyCourses() {
|
|
Base b = new Base("DS1001", "EntryCourse");
|
|
MajorRequired mr1 = new MajorRequired("DS200X", "OOP", b);
|
|
MajorElective me1 = new MajorElective("DS300X", "Data Mining", mr1);
|
|
ManyCourses mc = new ManyCourses();
|
|
mc.addCourse(b);
|
|
mc.addCourse(mr1);
|
|
mc.addCourse(me1);
|
|
mc.listCourses();
|
|
}
|
|
}
|