aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/lang/Exception.java
diff options
context:
space:
mode:
authorBryce McKinlay <bryce@waitaki.otago.ac.nz>2002-05-24 10:40:47 +0000
committerBryce McKinlay <bryce@gcc.gnu.org>2002-05-24 11:40:47 +0100
commit4fbecd29448860f20975d7aceecc14e843ef0eec (patch)
tree53a1d2512cd2b65a2d5c7ae0bf2924fdfc4a45b3 /libjava/java/lang/Exception.java
parent7efda05490056e0aa23cd533dce528294af6b4b1 (diff)
downloadgcc-4fbecd29448860f20975d7aceecc14e843ef0eec.zip
gcc-4fbecd29448860f20975d7aceecc14e843ef0eec.tar.gz
gcc-4fbecd29448860f20975d7aceecc14e843ef0eec.tar.bz2
Merge JDK 1.4 exception chaining support from classpath.
* java/lang/Throwable.java: Merge 1.4 support from classpath. (stackTraceBytes): Rename from stackTrace. * java/lang/Exception.java: Merge from classpath. * java/lang/StackTraceElement: New file from classpath. * gcj/javaprims.h: Rebuild CNI namespace declarations. * Makefile.am: Add StackTraceElement. * Makefile.in: Rebuilt. From-SVN: r53836
Diffstat (limited to 'libjava/java/lang/Exception.java')
-rw-r--r--libjava/java/lang/Exception.java70
1 files changed, 48 insertions, 22 deletions
diff --git a/libjava/java/lang/Exception.java b/libjava/java/lang/Exception.java
index a1c79ac..edf5de2 100644
--- a/libjava/java/lang/Exception.java
+++ b/libjava/java/lang/Exception.java
@@ -1,6 +1,6 @@
/* Exception.java -- generic exception thrown to indicate an exceptional
condition has occurred.
- Copyright (C) 1998, 1999, 2001 Free Software Foundation, Inc.
+ Copyright (C) 1998, 1999, 2001, 2002 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -8,7 +8,7 @@ GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
-
+
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
@@ -39,40 +39,66 @@ exception statement from your version. */
package java.lang;
-/* Written using "Java Class Libraries", 2nd edition, ISBN 0-201-31002-3
- * "The Java Language Specification", ISBN 0-201-63451-1
- * plus online API docs for JDK 1.2 beta from http://www.javasoft.com.
- * Status: Believed complete and correct.
- */
-
/**
- * Exceptions may be thrown by one part of a Java program and caught
- * by another in order to deal with the cause of the exception, such as
+ * The root class of all exceptions worth catching in a program. This
+ * includes the special category of <code>RuntimeException</code>, which
+ * does not need to be declared in a throws clause. Exceptions can be used
+ * to represent almost any exceptional behavior, such as programming errors,
* mouse movements, keyboard clicking, etc.
*
- * @since JDK 1.0
- *
* @author Brian Jones
* @author Warren Levy <warrenl@cygnus.com>
- * @date September 18, 1998.
+ * @author Eric Blake <ebb9@email.byu.edu>
+ * @status updated to 1.4
*/
public class Exception extends Throwable
{
- static final long serialVersionUID = -3387516993124229948L;
+ /**
+ * Compatible with JDK 1.0+.
+ */
+ private static final long serialVersionUID = -3387516993124229948L;
/**
- * Create an exception without a message.
+ * Create an exception without a message. The cause remains uninitialized.
+ *
+ * @see #initCause(Throwable)
*/
public Exception()
- {
- super();
- }
+ {
+ }
/**
- * Create an exception with a message.
+ * Create an exception with a message. The cause remains uninitialized.
+ *
+ * @param s the message
+ * @see #initCause(Throwable)
*/
public Exception(String s)
- {
- super(s);
- }
+ {
+ super(s);
+ }
+
+ /**
+ * Create an exception with a message and a cause.
+ *
+ * @param s the message string
+ * @param cause the cause of this error
+ * @since 1.4
+ */
+ public Exception(String s, Throwable cause)
+ {
+ super(s, cause);
+ }
+
+ /**
+ * Create an exception with a given cause, and a message of
+ * <code>cause == null ? null : cause.toString()</code>.
+ *
+ * @param cause the cause of this exception
+ * @since 1.4
+ */
+ public Exception(Throwable cause)
+ {
+ super(cause);
+ }
}