The final project for the spring semester of APCS was to build off the object we made during out fall semester project. In this project we added an interface, a super class for our past work, and methods here and there that would tie the two parts together to make one cohesive system of code.
My object was a wizard that attends Hogwarts. Last semester I had made my Hogwarts class and my Wizard class connected to one another through the has-a relationship. This semester I connected Hogwarts to the new super class School for the is-a relationship. In total my project works off these basic relationships: Hogwarts is a school that has a wizard. I created the interface Enrollment to allow people to enroll in different things. In this situation, it would be a student enrolling in a school, but this interface could be used to enroll in a camp, athletic class, and much more.
Here is a list of links to all my classes, my interface, and the driver I created for this project: