Object-Oriented Java Programming II assignments