|
Java Platform 1.2 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--java.lang.Throwable
The Throwable
class is the superclass of all errors
and exceptions in the Java language. Only objects that are
instances of this class (or of one of its subclasses) are thrown
by the Java Virtual Machine or can be thrown by the Java
throw
statement. Similarly, only this class or one of
its subclasses can be the argument type in a catch
clause.
Instances of two subclasses, Error
and
Exception
, are conventionally used to indicate
that exceptional situations have occurred. Typically, these instances
are freshly created in the context of the exceptional situation so
as to include relevant information (such as stack trace data).
By convention, class Throwable
and its subclasses have
two constructors, one that takes no arguments and one that takes a
String
argument that can be used to produce an error
message.
A Throwable
class contains a snapshot of the
execution stack of its thread at the time it was created. It can
also contain a message string that gives more information about
the error.
Here is one example of catching an exception:
try { int a[] = new int[2]; a[4]; } catch (ArrayIndexOutOfBoundsException e) { System.out.println("exception: " + e.getMessage()); e.printStackTrace(); }
Constructor Summary | |
Throwable()
Constructs a new Throwable with null as
its error message string. |
|
Throwable(String message)
Constructs a new Throwable with the specified error
message. |
Method Summary | |
Throwable |
fillInStackTrace()
Fills in the execution stack trace. |
String |
getLocalizedMessage()
Creates a localized description of this Throwable . |
String |
getMessage()
Returns the errort message string of this throwable object. |
void |
printStackTrace()
Prints this Throwable and its backtrace to the
standard error stream. |
void |
printStackTrace(PrintStream s)
Prints this Throwable and its backtrace to the
specified print stream. |
void |
printStackTrace(PrintWriter s)
Prints this Throwable and its backtrace to the specified
print writer. |
String |
toString()
Returns a short description of this throwable object. |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
wait,
wait,
wait |
Constructor Detail |
public Throwable()
Throwable
with null
as
its error message string. Also, the method
fillInStackTrace()
is called for this object.public Throwable(String message)
Throwable
with the specified error
message. Also, the method is called for
this object.message
- the error message. The error message is saved for
later retrieval by the method.Method Detail |
public String getMessage()
Throwable
object if it was created with an
error message string; or null
if it was
created with no error message.public String getLocalizedMessage()
Throwable
.
Subclasses may override this method in order to produce a
locale-specific message. For subclasses that do not override this
method, the default implementation returns the same result as
getMessage()
.public String toString()
Throwable
object was
created with an error message string,
then the result is the concatenation of three strings:
getMessage()
method for this object
Throwable
object was created
with no error message string, then the name of the actual class of
this object is returned.Throwable
.public void printStackTrace()
Throwable
and its backtrace to the
standard error stream. This method prints a stack trace for this
Throwable
object on the error output stream that is
the value of the field System.err
. The first line of
output contains the result of the toString()
method for
this object. Remaining lines represent data previously recorded by
the method fillInStackTrace()
. The format of this
information depends on the implementation, but the following
example may be regarded as typical:
This example was produced by running the program:java.lang.NullPointerException at MyClass.mash(MyClass.java:9) at MyClass.crunch(MyClass.java:6) at MyClass.main(MyClass.java:3)
class MyClass { public static void main(String[] argv) { crunch(null); } static void crunch(int[] a) { mash(a); } static void mash(int[] b) { System.out.println(b[0]); } }
System.err
public void printStackTrace(PrintStream s)
Throwable
and its backtrace to the
specified print stream.public void printStackTrace(PrintWriter s)
Throwable
and its backtrace to the specified
print writer.public Throwable fillInStackTrace()
Throwable
object information about the current state of
the stack frames for the current thread. This method is useful when
an application is re-throwing an error or exception. For example:
try { a = b / c; } catch(ArithmeticThrowable e) { a = Number.MAX_VALUE; throw e.fillInStackTrace(); }
Throwable
object.printStackTrace()
|
Java Platform 1.2 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |