/* * 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 courses; /** * Constructor. */ public ManyCourses() { courses = new ArrayList(); } /** * 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(); } }