Page 3 of 6
The text itself is well written and the created system demonstrates some good concepts on such topics as internationalization and RMI. The book would probably work out well for someone interested in learning about some server-side Java concepts with little explanation beyond the hands-on tutorial.

Java 2: A Beginner's Guide by Herbert Schildt provides a goal-based approach to teaching the necessary skills to getting started with Java. Providing a language-first approach at teaching Java, Schildt explores the fundamentals of the language before delving into classes, objects, and inheritance. Full of many different learning aides, the beginning Java programmer should pick up Java quickly and get a feel for how well they are doing with provided self-assessment checks.
Broken into 12 modules, Java 2: A Beginner's Guide's self-paced approach describes the core Java concepts, like the language fundamentals and object basics, quite well. With each concept are short one-minute drills with plenty of annotated code examples. There are also short projects interspersed throughout, with step-by-step walkthroughs that take you through creating a solution. Projects range from the simple to the complex, from demonstrating finalization to creating a disk-based help system. Schildt's approach works quite well, especially for the new Java programmer who needs a step-by-step guide.
Beyond the language and object fundamentals, the guide starts to look at some of the standard Java libraries. This is limited
to the final three chapters. The libraries covered are I/O, multithreading, and applets. The I/O chapter has you work with
byte and character-based I/O, while the multithreaded programming chapter has you create multiple threads, deal with synchronization,
and send messages between threads. It even has a short write-up on suspending threads without using the language's deprecated
features. The applets chapter is somewhat of a catchall chapter. Besides describing the applet architecture, it explains event
handling and some new keywords like volatile and strictfp. Anything dealing with AWT or Swing components as well as drawing with Java is noticeably absent.
Finally, Java 2: A Beginner's Guide ends with two appendices. The first includes answers for the end of module questions, while the second describes Java's documentation
comments syntax. The book's questions and answers should help readers get accustomed to testing for certification (though
without multiple-choice answers), while the javadoc appendix provides a reasonable level of coverage of the javadoc tags,
including the newer serialData and serialField tags.

The premise for Java 2 Weekend Crash Course by Sanchez and Canton is that, given 15 hours of your time, you'll go from absolutely no Java programming experience on Friday to being able to fill that new Java position on Monday morning, or at least be able to sound reasonably competent for the job interview. The 15 hours of learning spreads across 30 lessons. You will need some programming background before tackling the lessons, as it isn't meant as a first book on programming. The lessons run the gamut from programming fundamentals and objects, through data structures, I/O, and graphics.