An Introduction to Object-Oriented Programming with JAVA, 4/e
C. Thomas Wu (Otani),
Naval Postgraduate School, Monterey, California
ISBN: 0070611033 Copyright year: 2006
What's New
Key Changes in the Fourth Edition
Before we get into the features of the book, first we will highlight briefly the
changes we made in the fourth edition. The fourth edition includes more accessible
and indepth discussion of programmer-defined classes, Java 5.0 (Java 2 SDK 1.5)
topics, and less dependency on GUI.1. Gentler Introduction to Programmer-Defined Classes. One of the most
difficult aspects for students in learning object-oriented programming is the
creation of programmer-defined classes. Most students find using objects
from the standard classes fairly straightforward. However, they frequently
stumbled when trying to define their own classes. In the third edition, we presented
all topics related to programmer-defined classes in one chapter. In the
fourth edition, we spread the topics to two chatpers. We present the basics of
programmer-defined classes in Chapter 4 with new examples and gentler discussions
more accessible to students.2. More In-depth Coverage of Programmer-Defined Classes. In Chapter 7,
we present more in-depth coverage of programmer-defined classes, including
topics, such as, method overloading, the use of the reserved word this, and
class methods and variables. These topics are the ones most students find
difficult to grasp. By deferring the advanced topics until Chapter 7, after the
traditional topics on selection and repetition controls are covered, students are
more prepared to understand them. Also, by using control structures, we can present these OO features with more detailed and realistic examples that
clearly show the needs for such features.3. Java 5.0 (also known as Java 2 SDK 1.5). The latest Java 2 SDK includes
many additions. In the fourth edition, we describe some of them that improve
the teaching of CS1. The first is the Scanner class. Prior to SDK 1.5, standard
input routines are done by using a BufferedReader object. Since a Buffered-
Reader throws an exception, we must either discuss exception handling before
teaching the standard input or provide some kind of author-defined input class
that hides the exception handling. With the new Scanner class we can teach
much simpler input routines that do not require any exception handling. We
introduce the Scanner class in Chapter 3. The second is the Formatter class.
This class provides the formatting technique almost identical to the one supported
by the C programming language. We teach the Formatter class in
Chapter 6.4. No Dependency on GUI. In the third edition, we introduced basic GUI and
event-driven programming in Chapter 7 and advanced GUI in Chapter 14.
Some of the examples and sample developments in later chapters require the
knowledge of GUI. We combined them into one chapter and moved the combined
chapter to Chapter 14, thus providing flexibility. Those instructors who
do not teach GUI in the CS1 course can use the fourth edition as is. Those who
teach GUI can choose to cover selected GUI topics and introduce them as
early as after Chapter 2.