LifeMichael

LifeMichael

Haim Michael Blog

LifeMichael RSS Feed
 
 
 
 

Exceptions in Java and Threads PRO

When a specific method throws an Exception that isn’t handheld the exception is passed over to the method from which that specific method was called. If that other method doesn’t handle the exception the exceptions is passed over to the previous method and so on. Eventually, the thrown exception reaches the primary method of the thread in which the code is executed.

The primary method might be the method main, when dealing with the main thread of each and every Java application or the method run, when dealing with a new thread we created in our program. If the primary method doesn’t handle the exception then the thread in which the exception was thrown stops. The other threads continue. The following code sample shows that.

public class Mosko implements Runnable
{
 int number;
 public Mosko(int number)
 {
  this.number = number;  
 }
 @Override
 public void run()
 {
  for(int i=1; i<number; i++)
  {
   System.out.println(”ping “+i+” thread name is “+Thread.currentThread().getName());
   try
   {
    Thread.sleep(1000);    
   }
   catch(InterruptedException e)
   {
    e.printStackTrace();
   }
  } 
  throw new MyException();
 }
}

public class MyException extends RuntimeException
{
}

public class MoskoDemo
{
 /**
  * @param args
  */
 public static void main(String[] args) throws MyException
 {
  // TODO Auto-generated method stub
  new Thread(new Mosko(4)).start();
  new Thread(new Mosko(8)).start();
  new Mosko(12).run();
 }
}

The following video clip shows the execution of this code sample.

2 Responses to “Exceptions in Java and Threads PRO

  1. 1
    waseem sliman:

    hi haim
    this is waseem from course tsofen 5
    the demonstration is great
    but: the sound is low .. hardly can hear you voice

  2. 2
    admin:

    hi waseem, thanks for your comment. i will take that issue into consideration when preparing my next clips. good luck!

Leave a Reply

Categories

Communities

Archives

Tags

.NET Ajax Android Bible C# CSS diet eBook Games google HTML 5 J2ME Jacado Java Java EE Java ME JavaScript Joomla jQuery microsoft Mobizex mobosms Ness open source PHP quotes Reflection Scala Security Sidekick SMKB SMS SysML T-Mobile Technion testing Threads UML UNC Health Care Web Services Windows Phone 7 WP7 XHTML XML Zindell Technologies

Technorati

Add to Technorati Favorites

Recommend

ClustrMaps

FeedJIT

Google Page Rank

Alexa Stats