Java tutorial
/* Java Threads, 3rd Edition By Scott Oaks, Henry Wong 3rd Edition September 2004 ISBN: 0-596-00782-5 */ import java.util.*; public class TestOverrideThread implements Runnable { static class OverrideExceptionHandler implements Thread.UncaughtExceptionHandler { public void uncaughtException(Thread t, Throwable e) { alertAdministrator(e); } } public static void alertAdministrator(Throwable e) { // Use Java Mail to send the administrator's pager an email System.out.println("Adminstrator alert!"); e.printStackTrace(); } public static void main(String[] args) { Thread t = new Thread(new TestOverrideThread()); t.setUncaughtExceptionHandler(new OverrideExceptionHandler()); System.out.println(t.getUncaughtExceptionHandler()); t.start(); } public void run() { ArrayList al = new ArrayList(); while (true) { al.add(new byte[1024]); } } }