Exercises

One of the main activities that you will carry out in this course is to complete a number of programming exercises which require you to develop Java programs. Each exercise comes with a specification, some hints if you are finding problems in starting, and a solution. We have graded each exercise from 1 (easy) to 5 (very tough).

The prelude will guide you through the sequencing of each of the exercises, and the printed Study Calendar which you receive with your other course materials sets out a timetable for your studies.

Each of the exercises is described briefly below:

  • Easy exercises. These are introductory exercises on Java programming which you should find little difficulty with. Their main aim is to introduce you to programming in Java.
  • Some simple exercises on constructing Java classes.
  • Basic exercises in class construction. These exercises are a little more difficult than the previous set and provide you with further practice in developing Java classes.
  • Exercises on inheritance. These are the most difficult exercises that you will have met so far in the course.
  • Exercises on exceptions. For most of you this will be a new idea so do try and carry out all the exercises.
  • Exercises on abstract classes and interfaces. These are design concepts which seem rather difficult at first sight; we hope that the exercises will help you get to grips with them.
  • Exercises on finding information from the class libraries. These exercises provide you with practice in browsing the class libraries using the browser which you have been given.
  • Exercises on thread objects. These exercises provide you with practice in writing Java programs which are concurrent.
  • Exercises on the construction of applets. These are Java programs which can be embedded in Web documents.
  • Exercises on the development of human/computer interfaces (HCI) to a Java program. These will involve developing windows which contain HCI elements such as buttons and scroll bars.
  • Exercises on stream-based input/output. This will involve developing programs which read data from an external stream.
  • Networking exercises. These exercises represent the culmination of the course. They consist of a number of exercises where you will use Java to connect up to a remote computer.