The Java Tutorial | Trail Map Your guide to The JavaTM Tutorial You can begin reading the tutorial sequentially, or visit only those trails that interest you. If you have questions about the tutorial (how to download it, when it was updated, how to give us feedback...), go to the tutorial's first page. The tutorial's trails fall into three categories: Trails Covering the Basics Specialized Trails Comprehensive Examples

> ## Trails Covering the Basics

> Most, if not all, programmers need to know about the APIs
> discussed in these trails and lessons.

> | Getting Started [ TOC ] Start here to write, build, and run your first Java application and applet. | The Java Phenomenon The "Hello World" Application The "Hello World" Applet Common Problems (and Their Solutions)
> | Learning the Java Language [ TOC ] Learn the language from variables, expressions, and flow-control to objects, classes, and interfaces. | Object-Oriented Programming Concepts The Nuts and Bolts of the Java Language Objects and Classes in Java More Features of the Java Language Common Problems (and Their Solutions)
> | Writing Applets [ TOC ] Wanna spice up your web pages with applets? Discover what applets can, cannot, and should not do. | Overview of Applets Taking Advantage of the Applet API Practical Considerations of Writing Applets Finishing an Applet Common Problems (and Their Solutions)
> | Essential Java Classes [ TOC ] Find out how to use the classes in the JDK API that you are most likely to use in your Java programs. | Using String and StringBuffer Setting Program Attributes Accessing System Resources Handling Errors with Exceptions Doing Two or More Tasks at Once: Threads Reading and Writing (but no 'rithmetic)
> | Creating a GUI with JFC/Swing [TOC ] Put a face on your program with the JFC Swing components. | Getting Started with Swing Swing Features and Concepts Using Swing Components Using Other Swing Features Laying Out Components Within a Container Writing Event Listeners Working with Graphics Converting to Swing
> | Custom Networking [ TOC ] Write programs that communicate with resources and other programs on the network. | Overview of Networking Working with URLs All About Sockets All About Datagrams
> | To 1.1--And Beyond! [ TOC ] Learn what's new in 1.1 and upcoming in 1.2, and how to convert programs from 1.0 to 1.1. | What's New in 1.1 Migrating to 1.1 A Preview of Things to Come

> ## Specialized Trails

> Many, but not all, programmers need the APIs
> covered by these trails and lessons.

> | Overview [ TOC ] by Monica Pawlan Find brief descriptions of the topics covered in The Java Tutorial Continued. | Overview
> | Collections [ TOC ] by Joshua Bloch Use Java's collection framework to store and manipulate groups of related objects; it can can make your programs smaller, faster, and more reusable. | Introduction Interfaces Implementations Algorithms Custom Implementations Interoperability
> | Internationalization [ TOC ] by Dale Green Write programs for the global market. After internationalization, your software can support new languages and cultures without changes to the source code. | Introduction Setting the Locale Isolating Locale-Specific Data Formatting Working with Text
> | 2D Graphics [ TOC ] by Deborah Adair Enhance the appearance of your GUI with shapes, color, stylized text, foreign-language text, and image processing. Also, learn how to add printing capability to your programs. | Overview of the Java 2D API Displaying Graphics with Graphics2D Manipulating and Displaying Images Printing
> | Sound [ TOC ] by Deborah Adair Play sounds in AIFF, AW, WAV, MIDI, or RAF formats in your applets and applications. | Overview Playing Sounds
> | JavaBeans [ TOC ] by Andy Quinn Learn how to develop platform-independent components in the Java programming language. This trail covers JavaBeans basics, the BeanBox, and the Beans Development Kit. | JavaBeans Concepts and the Beans Development Kit Using the BeanBox Writing a Simple Bean Properties Manipulating Events in the BeanBox The BeanInfo Interface Bean Customization Bean Persistence New Features
> | JDBC Database Access [ TOC ] by Maydene Fisher Use the JDBC to connect to a database, send SQL statements, and process the results. The JDBC provides uniform access to a wide range of relational databases and provides a common base on which database tools can be built. | JDBC Basics New Features in the JDBC 2.0 API
> | RMI [ TOC ] by Ann Wollrath and Jim Waldo Call methods on an object running in another VM. RMI is often used to implement client/server applications. | An Overview of RMI Applications Writing an RMI Server Creating a Client Program Compiling and Running the Example
> | IDL [ TOC ] by Jim Inscore Java IDL provides CORBA-compliant interoperability for programs written in Java. This trail gives you an overview of CORBA and takes you through the steps to building a CORBA-compatible client/server combination with Java IDL. | Introducing Java IDL The Hello Client/Server Example Summary
> | Servlets [ TOC ] by Cynthia Bloch Learn how to use the Servlet API to extend the functionality of your server. | Overview of Servlets Interacting with Clients The Servlet Life Cycle Saving Client State Servlet Communication The servletrunner Utility Running Servlets
> | Security in JDK 1.2 [ TOC ] by Mary Dageforde Learn how the built-in security features protect you from malevolent programs. See how to use tools for controlling access to resources, generating and checking digital signatures, and creating and managing keys needed for signature generation and checking. See how to incorporate security checks and cryptography services into your programs. | Security Features Overview Quick Tour of Controlling Applets Quick Tour of Controlling Applications API and Tools Used for Secure Code and File Exchanges Signing Code and Granting It Permissions [Tools] Exchanging Files [Tools] Generating and Verifying Signatures [API] Implementing Your Own Permission Summaries
> | Security in JDK 1.1 [ TOC ] by Mary Dageforde See how to use the JDK Security API in JDK 1.1 to generate and verify digital signatures. | Java Security API Overview Using the Security API to Generate and Verify a Signature
> | JAR Files [ TOC ] by Alan Sommerer Bundle a Java program and its resources into an easily downloadable, secure archive. | Using JAR Files: The Basics Signing and Verifying JAR Files Using JAR-related APIs Introduced in 1.2
> | The Extension Mechanism [ TOC ] by Alan Sommerer Expand the functionality of the Java platform by using a standard, scalable way to make custom APIs available to all applications running on the Java platform. | Creating and Using Extensions Setting Extension Security Privileges
> | Java Native Interface [ TOC ] by Beth Stearns Use the Java Native Interface API to retain your investment in code written in other languages. The JNI lets you integrate native methods written in C or C++ with Java programs. | Overview of the JNI Writing Java Programs with Native Methods Integrating Java and Native Programs Interacting with Java from the Native Side Invoking the Java Virtual Machine Summary
> | Reflection [ TOC ] by Dale Green Learn how to dynamically create objects, invoke methods, access fields, and examine classes. | Examining Classes Manipulating Objects Working with Arrays Summary of Classes

> ## Comprehensive Examples

> All programmers can benefit from looking at
> large, real-world examples.

> | Putting It All Together [ TOC ] Explore a comprehensive example in depth to learn about the organization and interaction of the components of a Java program. | BINGO!

| All of the material in The Java Tutorial is copyright-protected and may not be published in other works without express written permission from Sun Microsystems.