Although
I test the code in this book with several different vendor implementations of
Java, I generally rely on the Sun implementation as a reference when
determining whether behavior is correct.
By
the time you read this, Sun will have released three major versions of Java:
1.0, 1.1 and 1.2 (Sun says it will make a major release about every nine
months!). Version 1.1 represents a significant change to the language and
should probably have been labeled 2.0. (And if 1.1 is such a big change from
1.0, I shudder to think what will justify the number 2.0.) However, it’s
version 1.2 that seems to finally bring Java into the prime time, in particular
where user interface tools are concerned.
This
book covers versions 1.0, 1.1 and selected parts of 1.2, although in situations
where a new approach is clearly superior to the old, I definitely favor the new
approach, often choosing to teach the better approach and completely ignore the
old approach. However, there are some cases where it’s unavoidable to
teach the old approach before the new, in particular with the AWT, since not
only is there a lot of old Java 1.0 code out there, but some platforms still
support only Java 1.0. I will try to be scrupulous about pointing out which
features belong to which version.
One
thing you’ll notice is that I don’t use the sub-revision numbers.
At this writing, the released version of 1.0 from Sun was 1.02 and the released
version of 1.1 was 1.1.5 (Java 1.2 was in beta). In this book I will refer to Java
1.0, Java 1.1
and Java 1.2 only,
to guard against typographical errors produced by further sub-revisioning of
these products.