-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathStudent.java
25 lines (23 loc) · 905 Bytes
/
Student.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package com.B5015845.CSC8002.Coursework;
import java.util.ArrayList;
import java.util.Date;
import javax.naming.LimitExceededException;
/*
* Interface class for Students. Contains methods that all student classes must implement.
* @author Arianna Esposito
*/
public interface Student {
public Name getName();
public Date getDob();
public StudentID getStudentID();
public StudentType getStudentType(); //different for different students
public ArrayList<Module> getModuleList();
public boolean addModuleToList(Module m) throws LimitExceededException;
public int getRequiredCredits(); //different for different students
public boolean hasEnoughCredits() throws LimitExceededException;
public String toString();
public SmartCard getSmartCard();
public int getPassMark(); //different for different students
public boolean isOfAge();
public int howManyCredits();
}