#

| Preface |

## Using This Book

This book divides roughly into three sections:

- Chapters 1 and 2 provide a basic introduction to Java concepts and a tutorial to give you a jump start on Java programming.

- Chapters 3 through 6 discuss tools for working with Java (the compiler, the interpreter, HTML support, etc.) and the language itself. Chapter 6, Threads covers the language's thread facilities, which should be of particular interest to advanced programmers.

- Chapters 7 through 14 discuss the class libraries. Chapter 7, Basic Utility Classes covers basic utilities; Chapter 8, Input/Output Facilities covers I/O facilities; Chapter 9, Network Programming covers networking; and Chapters 10 through 14 cover the Abstract Windowing Toolkit (AWT), which provides graphics and graphic user interface (GUI) support.

If you're like us, you don't read books from front to back. If you are really like us, you usually don't read the preface at all. However, on the off chance that you will see this in time, here are a few suggestions.

If you are an experienced programmer who has to learn Java in the next five minutes, you are probably looking for the examples. You might want to start by glancing at the tutorial in Chapter 2, A First Applet. If that doesn't float your boat, you should at least look at the information in Chapter 3, Tools of the Trade, which tells you how to use the compiler and interpreter, and gives you the basics of a standalone Java application. This should get you started.

Chapter 9, Network Programming is essential if you are interested in writing advanced networked applications. This is probably the most interesting and important part of Java. Unfortunately, we are still waiting for Sun to release a production version of HotJava, or for someone else to release a browser that implements all of Java's networking features.[1] Until then, you can still write interesting standalone applications that use the Net. Maybe you'll even write the browser we're waiting for.

> [1] Just before this book went to press, Sun released a "pre-beta 1" version of HotJava. That's definitely good news, though the pre-beta version doesn't support downloadable content and protocol handlers. These are promised for the "real" beta release.

Chapters 13 and 14 discusses Java's graphics features. You will need to read this if you are interested in animation and other live displays.

Audience |  | Getting Wired