// Exceptions demo import java.util.ArrayList; public class GradeList { public GradeList() { myGrades = new ArrayList(); } public void add(int newGrade) { if (newGrade < -1) { throw new IllegalArgumentException("no negative grades allowed"); } else { myGrades.add(new Integer(newGrade)); } } public void add(String newGrade) { throw new IllegalArgumentException("no Strings allowed"); } public double computeAverage() { int sum = 0; for (int i = 0; i < myGrades.size(); i++) { sum += ((Integer) myGrades.get(i)).intValue(); } if (myGrades.size() <= 0) { throw new ArithmeticException("cannot divide by zero, at least one grade must be entered"); } return (double) sum/myGrades.size(); } private ArrayList myGrades; }