CHAPTER 20
The java.lang
package contains classes that are fundamental to the design of
the Java language. The most important classes are Object
, which is the root of the
class hierarchy, and Class
, instances of which represent classes at run time.
Frequently it is necessary to represent a value of primitive type as if it were an object. The wrapper classes Boolean
, Character
, Integer
, Long
, Float
, and Double
serve this purpose. An object of type Double
, for example, contains a field whose type is double
, representing that value in such a way that a reference to it can be stored in a variable of reference type. These classes also provide a number of methods for converting among primitive values, as well as supporting such standard methods as equals
and hashCode
.
The class Math
provides commonly used mathematical functions such as sine, cosine, and square root. The classes String
and StringBuffer
similarly provide commonly used operations on character strings.
Classes ClassLoader
, Process
, Runtime
, SecurityManager
, and System
provide "system operations" that manage the dynamic loading of classes, creation of external processes, host environment inquiries such as the time of day, and enforcement of security policies.
Class Throwable
encompasses objects that may be thrown by the throw
statement (§14.16). Subclasses of Throwable
represent errors and exceptions.
The hierarchy of classes defined in package java.lang
is as follows.
Object
§20.1
interface
Cloneable
§20.2
Class
§20.3
Boolean
§20.4
Character
§20.5
Number
§20.6
Integer
§20.7
Long
§20.8
Float
§20.9
Double
§20.10
Math
§20.11
String
§20.12
StringBuffer
§20.13
ClassLoader
§20.14
Process
§20.15
Runtime
§20.16
SecurityManager
§20.17
System
§20.18
interface
Runnable
§20.19
Thread
§20.20
ThreadGroup
§20.21
Throwable
§20.22
Error
LinkageError
ClassCircularityError
ClassFormatError
ExceptionInInitializerError
IncompatibleClassChangeError
AbstractMethodError
IllegalAccessError
InstantiationError
NoSuchFieldError
NoSuchMethodError
NoClassDefFoundError
UnsatisfiedLinkError
VerifyError
VirtualMachineError
InternalError
OutOfMemoryError
StackOverflowError
UnknownError
ThreadDeath
Exception
ClassNotFoundException
CloneNotSupportedException
IllegalAccessException
InstantiationException
InterruptedException
RuntimeException
ArithmeticException
ArrayStoreException
ClassCastException
IllegalArgumentException
IllegalThreadStateException
NumberFormatException
IllegalMonitorStateException
IndexOutOfBoundsException
NegativeArraySizeException
NullPointerException
SecurityException