The exam is pencil-and-paper. You may not use a computer.
The exam is self-contained. You will not be asked to recall any specific problem from homework or labs.
You will not be expected to write much code on the exam. You may be asked to write interfaces and (abstract) classes (fields and constructors). You will not be asked to write large methods. You may be asked to fill in the blanks in a partially-written method.
You will not be graded on the details of Java syntax. You should know what info goes where (i.e., where fields go, what goes into each of interfaces and classes, how to distinguish abstract classes from non-abstract classes). You will not lose points for a missing semicolon, unbalanced braces, or other minor details as long as indentation/punctuation makes it clear what goes where.
The midterm from B-term 2010 should give you a reasonable idea of question styles. I do not have the exam answers written out to post, but feel free to go over these problems in anyone's office hours.
You may bring a single sheet of paper with whatever notes, examples, comments, etc that you wish. You may use both sides of the paper. Typeset or handwritten is fine. The exam is otherwise closed-book, closed-notes.
You may not share paper notes with others during the exam.
You have 50 minutes to complete the problems on the following pages. There should be sufficient space provided for your answers.
If a problem asks you to create a class hierarchy, we are looking for the interfaces, classes, and abstract classes that you would create for the problem. In particular:
Examplesclass (examples of data and test cases) unless a question asks otherwise