Home » openjdk-7 » java » lang » [javadoc | source]

    1   /*
    2    * Copyright (c) 1995, 2011, Oracle and/or its affiliates. All rights reserved.
    3    * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    4    *
    5    * This code is free software; you can redistribute it and/or modify it
    6    * under the terms of the GNU General Public License version 2 only, as
    7    * published by the Free Software Foundation.  Oracle designates this
    8    * particular file as subject to the "Classpath" exception as provided
    9    * by Oracle in the LICENSE file that accompanied this code.
   10    *
   11    * This code is distributed in the hope that it will be useful, but WITHOUT
   12    * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
   13    * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
   14    * version 2 for more details (a copy is included in the LICENSE file that
   15    * accompanied this code).
   16    *
   17    * You should have received a copy of the GNU General Public License version
   18    * 2 along with this work; if not, write to the Free Software Foundation,
   19    * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
   20    *
   21    * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
   22    * or visit www.oracle.com if you need additional information or have any
   23    * questions.
   24    */
   25   
   26   package java.lang;
   27   
   28   /**
   29    * {@code RuntimeException} is the superclass of those
   30    * exceptions that can be thrown during the normal operation of the
   31    * Java Virtual Machine.
   32    *
   33    * <p>{@code RuntimeException} and its subclasses are <em>unchecked
   34    * exceptions</em>.  Unchecked exceptions do <em>not</em> need to be
   35    * declared in a method or constructor's {@code throws} clause if they
   36    * can be thrown by the execution of the method or constructor and
   37    * propagate outside the method or constructor boundary.
   38    *
   39    * @author  Frank Yellin
   40    * @jls 11.2 Compile-Time Checking of Exceptions
   41    * @since   JDK1.0
   42    */
   43   public class RuntimeException extends Exception {
   44       static final long serialVersionUID = -7034897190745766939L;
   45   
   46       /** Constructs a new runtime exception with {@code null} as its
   47        * detail message.  The cause is not initialized, and may subsequently be
   48        * initialized by a call to {@link #initCause}.
   49        */
   50       public RuntimeException() {
   51           super();
   52       }
   53   
   54       /** Constructs a new runtime exception with the specified detail message.
   55        * The cause is not initialized, and may subsequently be initialized by a
   56        * call to {@link #initCause}.
   57        *
   58        * @param   message   the detail message. The detail message is saved for
   59        *          later retrieval by the {@link #getMessage()} method.
   60        */
   61       public RuntimeException(String message) {
   62           super(message);
   63       }
   64   
   65       /**
   66        * Constructs a new runtime exception with the specified detail message and
   67        * cause.  <p>Note that the detail message associated with
   68        * {@code cause} is <i>not</i> automatically incorporated in
   69        * this runtime exception's detail message.
   70        *
   71        * @param  message the detail message (which is saved for later retrieval
   72        *         by the {@link #getMessage()} method).
   73        * @param  cause the cause (which is saved for later retrieval by the
   74        *         {@link #getCause()} method).  (A <tt>null</tt> value is
   75        *         permitted, and indicates that the cause is nonexistent or
   76        *         unknown.)
   77        * @since  1.4
   78        */
   79       public RuntimeException(String message, Throwable cause) {
   80           super(message, cause);
   81       }
   82   
   83       /** Constructs a new runtime exception with the specified cause and a
   84        * detail message of <tt>(cause==null ? null : cause.toString())</tt>
   85        * (which typically contains the class and detail message of
   86        * <tt>cause</tt>).  This constructor is useful for runtime exceptions
   87        * that are little more than wrappers for other throwables.
   88        *
   89        * @param  cause the cause (which is saved for later retrieval by the
   90        *         {@link #getCause()} method).  (A <tt>null</tt> value is
   91        *         permitted, and indicates that the cause is nonexistent or
   92        *         unknown.)
   93        * @since  1.4
   94        */
   95       public RuntimeException(Throwable cause) {
   96           super(cause);
   97       }
   98   
   99       /**
  100        * Constructs a new runtime exception with the specified detail
  101        * message, cause, suppression enabled or disabled, and writable
  102        * stack trace enabled or disabled.
  103        *
  104        * @param  message the detail message.
  105        * @param cause the cause.  (A {@code null} value is permitted,
  106        * and indicates that the cause is nonexistent or unknown.)
  107        * @param enableSuppression whether or not suppression is enabled
  108        *                          or disabled
  109        * @param writableStackTrace whether or not the stack trace should
  110        *                           be writable
  111        *
  112        * @since 1.7
  113        */
  114       protected RuntimeException(String message, Throwable cause,
  115                                  boolean enableSuppression,
  116                                  boolean writableStackTrace) {
  117           super(message, cause, enableSuppression, writableStackTrace);
  118       }
  119   }

Home » openjdk-7 » java » lang » [javadoc | source]