The *final* exam and
will be given from 3:00 until 5:30 on Thursday, December 5 in
RRO 217.
This is the scheduled exam time for the 3:10-4:25 TR slot.
Since our class meeting time covers part of this slot, this time will be OK for
everyone

## Covered topics

This is a comprehensive exam, so you need to be familiar with the material covered in the first exam.

- First exam topics
- Java fundamentals from 181 & 182
- Variables
- Arrays (chapter 7)
- Arithmetic expression evaluaion
`if`

and`if`

—`else`

statements`for`

and`while`

loops

`ArrayList`

as in Lab 2 and in Homework 2- packages as in Homework 3
- I/O (chapter 11)
`Scanner`

as in Lab 3 and in Homework 4- Exception handling as in Lab 4 and in Homework 5

- Java fundamentals from 181 & 182
- Second exam topics
- Classes (chapter 8)
- Inheritance (chapter 9)
- subclass and superclass
- polymorphism
- overriding
`extends`

,`super`

,`instanceof`

- Homework 9

- Interfaces (chapter 10)
- Implementing and using interfaces
- Homework 10
- UML (chapter 12)
- Recursion (chapter 13)
- Implementation of recursively defined problems

- Recent topics
- Sorting and big-O (chapter 14)
- Java Collections Framework (chapter 15)
- Linked lists and hash structures (chapter 16)
- Homework 11

If you received a lot of aid from others in completing the homework,
it is *extremely* important that you master these
homeworks on your own.

## Examples from this term

Be sure to review the exams from this terms. Some questions will make a repeat appearence.

## Examples from last semseter

Because the textbook changed between the Spring and Fall 2013 semesters, the middle exams will be somewhat different. However, here are some problems from last year’s exam that would be worth reviewing. These problems aren’t exact matches to what we are doing this year, but many of them are close.

- Early exam: All problems
- Middle exam: All problems except for the second Problem 3
- Final exam: Problems 2, 5, 7, 8, 9, 11 & 12