Core java tutorial for beginners
A tutorial blog which explains different core concepts related to Java along with programming examples
Subscribe to Startertutorials.com's YouTube channel for different tutorial and lecture videos.

Categories: Exception Handling. No Comments on User Defined Exceptions

In this article we will learn how to create user defined exceptions (own exceptions) and how to use them in Java programs.

 

Although Java provides several pre-defined exception classes, sometimes we might need to create our own exceptions which are also called as user-defined exceptions.

 

Steps for creating a user-defined exception:

  1. Create a class with your own class name (this acts the exception name)
  2. Extend the pre-defined class Exception
  3. Throw an object of the newly create exception

 

As an example for user-defined exception, I will create my own exception named NegativeException as follows:

class NegativeException extends Exception
{
	String msg = "Value cannot be negative";
	NegativeException() {}
	NegativeException(String str)
	{
		msg = str;
	}
	public String toString()
	{
		return "NegativeException: " + msg;
	}
}

 

Note that I am overriding the toString() method of the Exception class to provide meaningful description of my own exception.

 

Now, I can use my own exception NegativeException in Java programs as shown below:

class NegativeExceptionDemo
{
	public static void main(String[] args)
	{
		try
		{
			int x = -5;
			if(x < 0)
			{
				throw new NegativeException();
			}
			else
			{
				System.out.println("x = " + x);
			}
		}
		catch(NegativeException e)
		{
			System.out.println(e);
		}
	}
}

 

Output of the above program is:

 

NegativeException: Value cannot be negative

 

From the above program you might have guessed the use of NegativeException. It notifies the user about negative values which are not allowed as input.

 

This how we can create and use our own exceptions in Java.

How useful was this post?

Click on a star to rate it!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

Suryateja Pericherla

Suryateja Pericherla, at present is a Research Scholar (full-time Ph.D.) in the Dept. of Computer Science & Systems Engineering at Andhra University, Visakhapatnam. Previously worked as an Associate Professor in the Dept. of CSE at Vishnu Institute of Technology, India.

He has 11+ years of teaching experience and is an individual researcher whose research interests are Cloud Computing, Internet of Things, Computer Security, Network Security and Blockchain.

He is a member of professional societies like IEEE, ACM, CSI and ISCA. He published several research papers which are indexed by SCIE, WoS, Scopus, Springer and others.

Note: Do you have a question on this article or have a suggestion to make this article better? You can ask or suggest us by filling in the below form. After commenting, your comment will be held for moderation and will be published in 24-48 hrs.

Leave a Reply

Your email address will not be published. Required fields are marked *