The course will
cover the following advanced Java topics, and certain topics that are
general relevance : file operations, generators, make, being examples
Collections - ArrayList, Vector, etc, iterators, comparators, generics.
Inheritance and interfaces, algebraic
Static variables, inner classes.
Casting, conversions, testing for
Random access file operations.
Serialisation, dynamic class loading.
Programming with visitors.
Generators and make.
Ability to design and
software system using good object-oriented practices.
Ability to use Java
Ability to build a
system with complex
dependencies during the software construction stage.
Course texts and required reading
Programming Advanced Topics, Wrigglesworth,
Big Java, Horstman,
You will initially work on preparing a
class hierarchy a specification of which and partial implementation is
provided in this pdf file You are to
complete the implementation, and to submit your results for marking as
you go providing test methods which demonstrate to your satisfaction
that the class is operating as specified. You should submit the results
of running your test script.
As you go you should be building up a make file that will automatically
compile and test the classes you build. The make file should not allow
compilation of subseqent stages if a test has failed for the earlier
- Prepare a diagram of the class hierarchy described in
the document and show it to your lecturer to check that you understand
the basic structure. (1 week)
- Implement the Numeric class, test it, submit to
lecturer for marking along with test data showing that it works. ( 2
- Implement the classes Bool and Text described in the
specification, test them and submit to the lecturer for marking. (1
2nd lab project
Never let it be said that I am a total heel, just wanting to grind my
students faces in the mud. In response to near universal despair at the
first series of exercises I have modified the subsequent work.
The additional project is documented in this