examples and exercise of thinking in java 4th edition