How To Use This Quick Reference

The quick-reference section that follows packs a lot of information into a small space. This introduction explains how the quick reference is organized and how to read the individual quick-ref entries. The outline of the reference and this introduction text have been adopted from Flanagan, D.: Java in a Nutshell - A Desktop Quick Reference, 2nd Ed., O'Reilly 1997.

Finding a Quick Reference Entry

The following chapters each document one package. The packages are listed alphabetically, beginning with net.simplace.app and ending with net.simplace.model.netcdf. Each chapter begins with an overview of the package, including a hierarchy diagram for the classes and interfaces in the package. Within each chapter, the classes and interfaces of a package are themselves listed alphabetically.

Within the documentation of a package the names of the classes and interfaces local to the package are unqualified. Qualified names are used for classes and interfaces from other packages. In the hierarchy diagram the interface names are shown in italic.

If you know the name of a class, but not of the package that it is a part of, or if you know the name of a method or field, but do not know what class defines it, use the index Class, Method, and Field Index, to find the information you need.

Reading a Quick Reference Entry

Each class and interface has its own entry in this quick reference. These quick-reference entries document the class or interface as described below. Because the information in each entry is quite dense, the descriptions of it that follow are somewhat complicated. I recommend that you flip through the reference as you read to find examples of each of the features described.

Name and Availability

Each quick reference entry has a title that is the name of the class or interface it documents. Below the title you may find availability information that indicates the version of the class or interface and when the it was added. If the availability string is followed by a deprecated note, it means that the class or interface has been deprecated and its use is discouraged.

Description

The class name is followed by a short description of the most important features of the class. This description may be anywhere from a couple of sentences to several paragraphs long.

Synopsis

The description is always followed by a synopsis of the class or interface. This is a listing that looks like a Java class definition, except that method bodies and field initializers are omitted. This synopsis contains the following information:

Class Modifiers
The synopsis begins with a list of class modifiers. All classes and interfaces in this quick reference are public; some are also declared abstract or final.

Class or Interface
If the modifiers are followed by the class keyword, it is a class that is being documented. If they are followed by the interface keyword, it is an interface that is being documented.

Class Name
The name of the class or interface follows the class or interface keyword. It is highlighted in bold.

Superclass
The superclass of the class follows the extends keywords.

Interfaces
The list of interfaces that the class implements, if any, follows the implements keyword.

Members
The constructors, fields, and methods defined by the class or interface form the bulk of the synopsis. All public and protected members are listed. They are divided into the following categories, and listed alphabetically by name within each category. Each category begins with a comment to break the synopsis listing into logical sections. The categories, in the order listed, are:

  1. Public constructors
  2. Protected constructors
  3. Constants
  4. Class variables
  5. Public instance variables
  6. Protected instance variables
  7. Class methods
  8. Public instance methods
  9. Protected instance methods
  10. Inner classes

Availability
If a member synopsis begins with "#", it means that the constructor, field, or method has been deprecated and that its use is discouraged.

Member Modifiers
The modifiers for each member are listed. These provide important information about how the members are used. The modifiers you may find listed are: public, protected, static, abstract, final, synchronized, native, and transient.

Member Type
The listing for a member may include a type. The types of fields and constants are shown, as are the return types of methods. Constructors do not have return types in Java.

Member Name
The name of each class member is in bold, for easy scanning.

Parameters
The synopsis for a method or constructor includes the type and name of each parameter that it takes.

Exceptions
The exceptions that may be thrown by a method or constructor follow the throws keyword in the synopsis.

Inheritance
The synopsis for a method may be followed by a comment that includes a class or interface name. If a method is followed by a //Overrides comment, the method overrides a method by the same name in the specified superclass. If a method synopsis is followed by a //Defines comment, the method provides the definition of an abstract method of the specified superclass. Finally, if a method synopsis is followed by a //From comment, the method implements a method from the named interface (which is implemented by the class or a superclass).

Cross References

The synopsis section is followed by a number of optional "cross reference" sections that indicate other, related classes that may be of interest. The cross reference sections are the following:

Hierarchy
This section lists all of the superclasses of the class, as well as any interfaces implemented by those superclasses. It may also list any interfaces extended by an interface. This section only appears when it provides information that is not available from the extends and implements clauses of the class synopsis. In the hierarchy listing the interfaces implemented by a class follow the class name in parentheses. This information can be useful, for example, to determine whether a class implements Serializable or Cloneable somewhere up its superclass hierarchy.

Extended By
This section lists all direct subclasses of this class, or any interfaces that extend this interface, which tells you that there are more specific classes or interfaces to look at.

Implemented By
This section lists all of the classes that directly implement this interface, which is useful when you know that you want to use the interface but you don't know what implementations of it are available.

Passed To
This section lists all of the methods and constructors that are passed an object or this type as an argument, which is useful when you have an object of a given type and want to figure out what you can do with it.

Returned By
This section lists all of the methods (but not constructors) that return an object of this type, which is useful when you know that you want to work with an object of this type, but don't know how to obtain one.

Type Of
This section lists all of the fields and constants that are of this type, which can help you figure out how to obtain an object of this type.

Thrown By
For exception and error classes, this section lists all of the methods and constructors that throw exceptions of this type. This material helps you figure out when a given exception or error may be thrown. Note, however, that this section is based on the exception types listed in the throws clauses of methods and constructors. Subclasses of RuntimeException do not have to be listed in throws clauses, so it is not possible to generate a complete cross reference of methods that throw these types of "unchecked" exceptions.