Contract Model and Exception Handling.
Reconsider the example in Assignment 1. Modify
so that it handles all of its preconditions with exceptions.
Use the standard exceptions recommended by Bloch.
Document this with a revised contract.
You can use JavaDoc or you can simply identify the postconditions.