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.

Share:

The Visitor Design Pattern

The Visitor Design Pattern

The visitor design pattern allows us to add operations to objects that already exist without modifying their classes and without extending them.

What are Anti Patterns?

Anti Patterns

Unlike design patterns, anti patterns just seem to be a solution. However, they are not a solution and they cause additional costs.

Virtual Threads in Java Professional Seminar

Virtual Threads in Java

The use of virtual threads can assist us with improving the performance of our code. Learn how to use virtual threads effectively.

NoSQL Databases Courses, Seminars, Consulting, and Development

MongoDB Design Patterns Meetup

The use of MongoDB involves with various cases in which we can overcome performance issues by implementing specific design patterns.

image of woman and database

Record Classes in Java

Learn how to define record classes in Java, and when to use record classes in your code. Stay up to date with the new Java features.

Accessibility | Career | Conferences | Design Patterns | JavaScript | Meetups | PHP | Podcasts | Python | Self Learning

Teaching Methodologies | Fullstack | C++ | C# | CSS | Node.js | Angular | Java | Go | Android | Kotlin | Swift | Academy

Front End Development | Scala | Architectures | Cloud | Big Data | Internet of Things | Kids Learn Programming

The Beauty of Code

Coding is Art! Developing Code That Works is Simple. Develop Code with Style is a Challenge!

Skip to content Update cookies preferences