At nearly 1200 pages, the size of this work belies its invitingly friendly title; and indeed that title may put off potential readers, who upon hefting this massive work may ask themselves, “Do I have to read all this just to begin to learn Java?” Well, rather than answer that directly, let me describe everything that this book does cover, then you’ll be in a position to decide for yourself whether this book will only get you started, or if it might just take you all the way to your objective.
The first third or so of the book is what is often referred to as a language tour. Beginning with the basic concepts upon which the language is based (in the case of Java, these are the classic Object Oriented Programming (OOP) principles taught in all university computer science courses these days), the discussion then proceeds to a thorough, yet surprisingly not overly ponderous, description of the language, beginning with basic program mechanics and guiding the reader over the course of ten chapters and nearly five hundred pages through such topics as data types, objects and classes, inheritance, exception handling, I/O, and threads. Don’t worry if many of those terms are unfamiliar to you â€“ this book does a great job of introducing every concept in a practical light, supported with useful examples so as not to get bogged down in the theory.
This being the point at which many other “Java for beginners” books finish off and refer you on to more advanced reading, it comes as a pleasant surprise that the bulk of this book still remains, because this is when Java really starts to get interesting!
Beginning with an introduction to graphical user interfaces (windows, buttons, menus, and graphics), the book pushes forward in an attempt to teach you everything you need to write full, graphical Java applications, rather than just basic command-line programs. I was a little disappointed by the way this book glosses over certain sticky points; however, the author does steer the reader so that these issues are largely avoided, even if a few lingering question marks are left behind in the process.
Any slight lack of depth on particular issues, however, is more than made up for by the surprisingly complete discussion of Java user interface methodologies that is presented. Time and again I turned the page expecting the author to skip something and instead found a wealth of information I would only have expected from a book dedicated to Java user interfaces. Chapters 14 and 15 that cover freeform drawing with the new Java2D features in Java 2 and implementing advanced user interface features respectively are definitely the most fast-paced and interesting part of the book, as they really allow the power and convenience of the Java language to shine.
With advanced chapters on saving data to files and adding printing support to Java applications (both topics that are rarely covered in Java books), images, animation, and sound, this book once again surmounted my expectations for a “beginner’s guide.” Finally, the last two chapters provide a whirlwind tour of Java’s database interaction features. I must confess that these seemed rather out of place, and if you’re intending to do any serious database development with Java I could definitely think of better books on the subject, but if you think of these chapters as an added bonus to give you a taste of what else Java can do (and it can do a lot), then there really isn’t any reason to complain.
This updated edition of “Beginning Java 2″ is a book written in the finest tradition of tutorial references, guiding even the complete neophyte easily into some of the most powerful and advanced features of Java in a way that highlights the great strengths of this language, while at the same time making a perfect desk reference for the experienced Java developer that needs something a little more readable than the online references. While no single book can cover everything that Java is capable of, this one never once shied away from an advanced topic if it was germane to the task at hand.
“Beginning Java 2 â€“ JDK 1.3 Edition” by Ivor Horton
April 2000 WROX Press (www.wrox.com)
1123 pages + 51 pages of Appendices
Buy it at Amazon.com for $39.99