Author/s : Cay S Horstmann, Gary Cornell
Publisher : Prentice-Hall
Category :
Advanced Java
Review by : Campbell Ritchie
Rating : 8 horseshoes
I was pleased to have a copy of this book to review. It is by no means a beginners' book, moving at a fast pace, and often referring to later chapters or VolII, and using a rather "compressed" form of code in its examples. Users of previous editions will recognise the writing style, updated seamlessly so one cannot see the join between "old" and "new". Unlike in some books, there is no "project" running through it, nor end-of-chapter exercises. Again reflection appears unusually early position in this book. It has ~220 more pages than my 2005 edition, but part of that increase comes from moving the threading chapter into VolI.
It is an object-oriented book, but assumes readers already know what objects are. It describes aliases, returning mutable references and pass-by-value. Also warnings about potential security hazards and pitfalls.
Much of the book consists of a detailed description of different features of the platform. It has probably the clearest description of
Java generics I have seen. The threading chapter is also up to date, with Locks before synchronized.
This book takes it for granted than the reader already know the working of data structures, Singletons, Immutable classes or invariants, so they are not described. Many differences from C++ are mentioned; although many C++ programmers already know Java, those are potential points of confusion. These differences are less relevant to people who come straight to Java.
I disagree with a few things: throwing an unchecked Exception to enable an overridden method to compile, Scanner#nextLine reads the next line.
One thing I was disappointed by: the book has only few references.
A good resource to get you up to speed in Java. When VolII comes out it will probably also be a very comprehensive resource.
---
Disclosure: I received a copy of this book from the publisher in
exchange for writing this review on behalf of CodeRanch.
More info at Amazon.com