5.1. Java Platform Overview
Table 5-1 summarizes the key packages of the Java platform that are covered in this book.
Package | Description |
---|---|
java.io | Classes and interfaces for input and output. Although some of the classes in this package are for working directly with files, most are for working with streams of bytes or characters . |
java.lang | The core classes of the language, such as String , Math , System , THRead , and Exception . |
java.lang.annotation | Annotation types and other supporting types for the Java 5.0 annotation feature. (See Chapter 4.) |
java.lang.instrument | Support classes for Java virtual machine instrumentation agents , which are allowed to modify the byte code of the program the JVM is running. New in Java 5.0. |
java.lang.management | A framework for monitoring and managing a running Java virtual machine. New in Java 5.0. |
java.lang.ref | Classes that define weak references to objects. A weak reference is one that does not prevent the referent object from being garbage-collected . |
java.lang.reflect | Classes and interfaces that allow Java programs to reflect on themselves by examining the constructors, methods , and fields of classes. |
java.math | A small package that contains classes for arbitrary-precision integer and floating-point arithmetic. |
java.net | Classes and interfaces for networking with other systems. |
java.nio | Buffer classes for the New I/O API. Added in Java 1.4. |
java.nio.channels | Channel and selector interfaces and classes for high-performance, nonblocking I/O. |
java.nio.charset | Character set encoders and decoders for converting Unicode strings to and from bytes. |
java.security | Classes and interfaces for access control and authentication. This package and its subpackages support cryptographic message digests and digital signatures. |
java.text | Classes and interfaces for working with text in internationalized applications. |
java.util | Various utility classes, including the powerful collections framework for working with collections of objects. |
java.util.concurrent | Thread pools and other utility classes for concurrent programming. Subpackages support atomic variables and locks. New in Java 5.0. |
java.util.jar | Classes for reading and writing JAR files. |
java.util.logging | A flexible logging facility. Added in Java 1.4. |
java.util.prefs | An API to read and write user and system preferences. Added in Java 1.4. |
java.util.regex | Text pattern matching using regular expressions. Added in Java 1.4. |
java.util.zip | Classes for reading and writing ZIP files. |
javax.crypto | Classes and interfaces for encryption and decryption of data. |
javax.net | Defines factory classes for creating sockets and server sockets. Enables the creation of socket types other than the default. |
javax.net.ssl | Classes for encrypted network communication using the Secure Sockets Layer (SSL). |
javax.security.auth | The top-level package for the JAAS API for authentication and authorization. Various subpackages hold most of the actual classes. Added in Java 1.4. |
javax.xml.parsers | A high-level API for parsing XML documents using pluggable DOM and SAX parsers. |
javax.xml.transform | A high-level API for transforming XML documents using a pluggable XSLT transformation engine and for converting XML documents between streams, DOM trees, and SAX events. Subpackages provide support for DOM, SAX and stream transformations. Added in Java 1.4. |
Table 5-1 does not list all the packages in the Java platform, only the most important of those documented in this book. Java also defines numerous packages for graphics and graphical user interface programming and for distributed, or enterprise, computing. The graphics and GUI packages are java.awt and javax.swing and their many subpackages. These packages are documented in Java Foundation Classes in a Nutshell and Java Swing , both from O'Reilly. The enterprise packages of Java include java.rmi , java.sql , javax.jndi , org.omg.CORBA , org.omg.CosNaming , and all of their subpackages. These packages, as well as several standard extensions to the Java platform, are documented in Java Enterprise in a Nutshell (O'Reilly).