New to Java? We'll help you get started with our revised beginner's tutorial, or our free online textbook.

Get the latest Java books
h t t p : / /w w w . j a v a c o f f e e b r e a k . c o m /

Java Coffee Break


Learning Java

Author Profiles
Talk Java!

Using Java

Discuss Java

Looking for Java resources? Check out the Java Coffee Break directory!

Java Coffee Break
Recommended Titles

Finding the right Java book can be a tough job! Some books are aimed at the beginner, others are written for the expert. Some books cover general Java programming, others are for specialized subject matter such as databases or networking. We've reviewed dozens of the finest Java books available, to help you find the title that's perfect for you.

Each review contains title, author and ISBN numbers, to help you track it down at your local bookstore. Or, if you prefer the convenience of online shopping, you can click on the cover to order it from, one of the world's largest bookstores.


Thinking in Java,
by Bruce Eckel

Thinking in Java is a comprehensive guide to the Java programming language, written by the Bruce Eckel (author of the hugely successful Thinking in C++ series). This is an amazing book, not only for its content but also its distribution. Bruce Eckel gives the entire text of his book in Adobe PDF format away from his website, without charging. The 'electronic' edition of this book is a companion to the print edition, which retails for a modest price considering the size of the book and the value of the content within.

There's a real sense, throughout the book, of the author's personality and programming prowess. Some introductory Java books will show you how to program applets, a little GUI design, a little networking, and if you're lucky something about Swing. The focus is on the base Java APIs, and little more. Thinking in Java goes much further, tackling advanced issues like design patterns, I/O and networking, and class design. It teaches you how to program in Java, and to think like a Java programmer. The wealth of experience of the author is contained within these pages, and is an invaluable learning tool.

Many readers will be tempted to download the book, rather than purchasing it. I'd highly recommend doing so - but if you're like me you'll quickly find reading such a long book on a screen tiresome. However, to whet your appetite, visit Bruce Eckel's website at and try it for yourself. This comprehensive guide to the Java programming language is excellent value, and a long lasting reference when working with Java --David Reilly.

Thinking in Java

Thinking in Java,
ISBN : 0136597238

Experience level :
Beginner -

Beginning Java 2,
by Ivor Horton

Beginning Java 2 is a good guide to the Java programming language, for those who have never written a line of Java before. It takes the reader through a fairly gentle learning curve, starting with the most basic fundamentals (Java syntax, data types, and objects/classes) and gradually moves forward onto more advanced topics, like operators, loops, and conditional statements. This isn't a fast paced guide to Java that rushes through the fundamentals - it gives thorough coverage of the language before moving onto more advanced topics, like the Java API.

This book is best suited to those who have had some modest programming experience in a computing language, but who have yet to jump on the Java bandwagon. Many Java programming books rush through the basic topics, leading the reader bewildered and wishing they'd looked for a simpler title. Not so for Beginning Java 2 - it has been written from the ground up to provide the reader with a thorough knowledge of the Java language. Don't get me wrong, there's plenty of good books for beginners out there, but some of the most popular only cover earlier versions of Java (such as JDK1.1), and miss out on some important topics like the new Java collections framework, which provides developers with lists, trees, and other important data structures. Beginning Java 2 covers all of this, in an easy-to-read fashion alongside plenty of examples.

For GUI developers, not only does the book cover the Abstract Windowing Toolkit (AWT), but also the newer Swing graphical components, which make it possible to create sophisticated looking software. There's even coverage of database programming, using the Java Database Connectivity (JDBC) library. This book covers each topic comprehensively and thoroughly, but its one flaw is that it fails to address the networking packages. While these are not always of interest to beginners, many people choose the Java programming language because of the networking support, and every beginner book I've read has at least a superficial coverage of networking.

As long as you've had some basic programming experience before, and aren't particularly fussed about networking coverage, Beginning Java 2 represents a great way to get started with Java. Its lengthy coverage of the Java programming language and API make it an attractive choice as a reference and tutorial for students, amateur programmers and professional developers needing to learn Java. -- David Reilly

Beginning Java 2,
ISBN : 1861002238

Experience level :

TriggerGETitat87x32.gif (1131 bytes)

Java Gently, by Judy Bishop

This review relates to the first edition

Java Gently teaches the principles of computer programming, and the Java language, rather than just teaching Java in isolation. Unlike other books, it requires no previous programming experience, because it teaches fundamental concepts alongside Java. It has a good emphasis on object orientated design; class diagrams are used extensively throughout the book to make it easy to understand how examples work. Working through the book will teach you how to program - not just how to write simple applets. This isn't a quick guide to Java, so not everyone will appreciate this approach.

Examples in the book teach a wide range of topics, from simple concepts like conditional branching and looping, to high level concepts like exception handling, abstraction, data structures and networking. The approach taken by the book introduces topics gradually, and makes it easy to pick up the skills needed to program in Java. Other books attempt to teach a narrow range of topics, such as Java applets or user interfaces within a very short time-frame, whereas this book has a more broad scope that will make future programming easier. If Java is your first programming language, and you're considering it as a career, you should make this one of your first books.--David Reilly.

Java Gently

Java Gently,
ISBN : 0201342979

Experience level :

Just Java 1.2, by Peter van der Linden

Review Courtesy of
So, you're starting from zero in an effort to learn the Java programming language. What book will help you most? Just Java 1.2 should be on your desktop. It's one of a select group of introductory Java books that honestly earns its cover price.

Shying away from complicated aspects of the language that are seldom used in most practical situations, Peter van der Linden focuses his considerable teaching skills upon the parts of the language you really need to understand in order to be a good Java programmer. He covers basic structure and syntax very well, and gives similarly excellent attention to object orientation and the means by which Java implements it. Applets, Beans, input/output streams, basic graphics, Swing, and security all get superb coverage.

In short, this book explains everything you really need to know in order to write useful Java programs. With sharp text and very good example programs, the author shows you how to get things done. In the process, van der Linden--a funny guy--pauses often to show you how to make an origami water-bomber or comment upon software error messages like "runt packet."

The CD-ROM that comes with this book deserves much praise, as well. Packed with honestly useful tools and all of the author's examples, it employs a fine HTML-based interface that other books ought to imitate. --David Wall.

Just Java 1.2

Just Java 1.2,
ISBN : 0130105341

Experience level :
Beginner - Intermediate

Java 2 Platform Unleashed, by Jamie Jaworski

I've always been a big fan of the Java Unleashed series of books, not only for their ability to teach the Java programming language, but also for their comprehensive coverage of the Java language, its API, and advanced topics like multi-threading, networking, and Java extensions. This type of coverage means that they can be used afterwards as a programming reference. With the release of the Java 2 platform, however, there have been many changes including Swing, servlets, CORBA, and increased multimedia support (Java Media Framework, Java 2D, Java 3D). Some books might have adopted a superficial approach, covering only the most obvious of changes, and leaving out the new Java extensions. So it's with great surprise, and a little relief, that "Java 2 Unleashed" continues the fine tradition of its predecessors, by providing comprehensive coverage of all the new changes and features of Java 2.

While many references give only superficial coverage of topics, "Java 2 Unleashed" takes a detailed look at the Java 2 Platform. Whether you're interested in upgrading your applications to use the rich range of new Swing components, want to create interactive applets to spice up a website, or even write client/server networking applications, this book covers it! But it goes further still. There are chapters on using the system clipboard, implementing drag and drop support, printing, and internationalization. Its coverage on networking and distributed systems covers remote method invocation (RMI), content handlers, JavaMail, CORBA and network programming (total of seven networking chapters). For those interested in Java's multimedia support, there are chapters covering the new Java 2D & Java 3D APIs, implementing animation in applets, and the new Java Media Framework (JMF). Even more impressive is the comprehensive look at developing and using JavaBeans (six chapters in total). This is the ultimate reference, and makes it easy to get a handle on the new changes in the Java 2 Platform.

Nor is this title limited only to the new innovations which would interest existing Java developers. This book takes on the awesome challenge of introducing someone new to Java to the Java 2 platform, taking it slowly from applets to applications, through AWT & Swing, as well as the core Java packages (java.lang, java.util,, database programming with JDBC, development tools, and all the practical information gathered from the author's experience. "Java 2 Platform Unleashed" is a fine addition to the library of any programmer, be they experienced in Java or still learning it.--David Reilly.

Java 2 Platform Unleashed
ISBN : 0672316315

Experience level :
Beginner - Intermediate

Reference Books

There are plenty of good reference guides for Java. Here are our favorite recommendations

Graphical user interfaces

GUI programming is an important part of most applications and applets. Here are some guides to get you started

Networking & Distributed Computing

Special Topics

Back to main

Copyright 1998, 1999, 2000 David Reilly

Privacy | Legal | Linking | Advertise!

Last updated: Monday, June 05, 2006