import java.util.ArrayList; 
 
public class Main 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 Main()); 
    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]); 
    } 
  } 
} 
 
    
     
  
  |