Java.lang.Thread.setUncaughtExceptionHandler() Method Example



Description

The java.lang.Thread.setUncaughtExceptionHandler() method set the handler invoked when this thread abruptly terminates due to an uncaught exception.

Declaration

Following is the declaration for java.lang.Thread.setUncaughtExceptionHandler() method

public void setUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh)

Parameters

eh − This is the object to use as this thread's uncaught exception handler. If null then this thread has no explicit handler.

Return Value

This method does not return any value.

Exception

SecurityException − if the current thread is not allowed to modify this thread.

Example

The following example shows the usage of java.lang.Thread.setUncaughtExceptionHandler() method.

Live Demo
package com.tutorialspoint;

import java.lang.*;

public class ThreadDemo {

   public static void main(String[] args) {

      Thread t = new Thread(new adminThread());
      t.setUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {

         public void uncaughtException(Thread t, Throwable e) {
            System.out.println(t + " throws exception: " + e);
         }
      });
      // this will call run() function
      t.start();
   }
}

class adminThread implements Runnable {

   public void run() {
      throw new RuntimeException();
   }
} 

Let us compile and run the above program, this will produce the following result −

Thread[Thread-0,5,main] throws exception: java.lang.RuntimeException
java_lang_thread.htm
Advertisements