Top


定義場所(file name)

jdk/src/share/classes/java/lang/Thread.java

説明(description)

    /**
     * Set the default handler invoked when a thread abruptly terminates
     * due to an uncaught exception, and no other handler has been defined
     * for that thread.
     *
     * <p>Uncaught exception handling is controlled first by the thread, then
     * by the thread's {@link ThreadGroup} object and finally by the default
     * uncaught exception handler. If the thread does not have an explicit
     * uncaught exception handler set, and the thread's thread group
     * (including parent thread groups)  does not specialize its
     * <tt>uncaughtException</tt> method, then the default handler's
     * <tt>uncaughtException</tt> method will be invoked.
     * <p>By setting the default uncaught exception handler, an application
     * can change the way in which uncaught exceptions are handled (such as
     * logging to a specific device, or file) for those threads that would
     * already accept whatever &quot;default&quot; behavior the system
     * provided.
     *
     * <p>Note that the default uncaught exception handler should not usually
     * defer to the thread's <tt>ThreadGroup</tt> object, as that could cause
     * infinite recursion.
     *
     * @param eh the object to use as the default uncaught exception handler.
     * If <tt>null</tt> then there is no default handler.
     *
     * @throws SecurityException if a security manager is present and it
     *         denies <tt>{@link RuntimePermission}
     *         (&quot;setDefaultUncaughtExceptionHandler&quot;)</tt>
     *
     * @see #setUncaughtExceptionHandler
     * @see #getUncaughtExceptionHandler
     * @see ThreadGroup#uncaughtException
     * @since 1.5
     */

名前(function name)

    public static void setDefaultUncaughtExceptionHandler(UncaughtExceptionHandler eh) {

本体部(body)

  {- -------------------------------------------
  (1) 
      ---------------------------------------- -}

            SecurityManager sm = System.getSecurityManager();
            if (sm != null) {
                sm.checkPermission(
                    new RuntimePermission("setDefaultUncaughtExceptionHandler")
                        );
            }

  {- -------------------------------------------
  (1) defaultUncaughtExceptionHandler フィールドに引数で指定された値をセットする.
      ---------------------------------------- -}

             defaultUncaughtExceptionHandler = eh;
         }

This document is available under the GNU GENERAL PUBLIC LICENSE Version 2.