When a programmer throws any custom exception, he must declare that execption in method


An exception is an issue (run time error) occurred during the execution of a program. When an exception occurred the program gets terminated abruptly and, the code past the line that generated the exception never gets executed.

User defined exceptions

You can create your own exceptions in Java and they are known as user defined exceptions or custom exceptions.

To create a user defined exception extend one of the above mentioned classes. To display the message override the toString() method or, call the superclass parameterized constructor by passing the message in String format.

MyException(String msg){
   super(msg);
}
Or,
public String toString(){
   return " MyException [Message of your exception]";
}

Then, in other classes wherever you need this exception to be raised, create an object of the created custom exception class and, throw the exception using the throw keyword.

MyException ex = new MyException ();
If(condition……….){
   throw ex;
}

Custom Checked and Custom Unchecked

  • All exceptions must be a child of Throwable.
  • If you want to write a checked exception that is automatically enforced by the Handle or Declare Rule, you need to extend the Exception class.
  • If you want to write a runtime exception, you need to extend the RuntimeException class.

Example: Custom Checked exception

Following Java program Demonstrates how to create Custom checked exception.

import java.util.Scanner;
class NotProperNameException extends Exception {
   NotProperNameException(String msg){
      super(msg);
   }
}
public class CustomCheckedException{
   private String name;
   private int age;
   public static boolean containsAlphabet(String name) {
      for (int i = 0; i < name.length(); i++) {
         char ch = name.charAt(i);
         if (!(ch >= 'a' && ch <= 'z')) {
            return false;
         }
      }
      return true;
   }
   public CustomCheckedException(String name, int age){
      if(!containsAlphabet(name)&&name!=null) {
         String msg = "Improper name (Should contain only characters between a to z (all small))";
         NotProperNameException exName = new NotProperNameException(msg);
         throw exName;
      }
      this.name = name;
      this.age = age;
   }
   public void display(){
      System.out.println("Name of the Student: "+this.name );
      System.out.println("Age of the Student: "+this.age );
   }
   public static void main(String args[]) {
      Scanner sc= new Scanner(System.in);
      System.out.println("Enter the name of the person: ");
      String name = sc.next();
      System.out.println("Enter the age of the person: ");
      int age = sc.nextInt();
      CustomCheckedException obj = new CustomCheckedException(name, age);
      obj.display();
   }
}

Compile time exception

On compiling, the above program generates the following exception.

CustomCheckedException.java:24: error: unreported exception NotProperNameException; must be caught or declared to be thrown throw exName;
                      ^
1 error

Example: Custom unChecked exception

If you simply change the class that your custom exception inherits to RuntimeException it will be thrown at run time

class NotProperNameException extends RuntimeException {
   NotProperNameException(String msg){
      super(msg);
   }
}

If you run the previous program By replacing the NotProperNameException class with above piece of code and run it, it generates the following runtime exception.

Runtime exception

Enter the name of the person:
Krishna1234
Enter the age of the person:
20
Exception in thread "main" july_set3.NotProperNameException: Improper name (Should contain only characters between a to z (all small))
   at july_set3.CustomCheckedException.<init>(CustomCheckedException.java:25)
   at july_set3.CustomCheckedException.main(CustomCheckedException.java:41)

When a programmer throws any custom exception, he must declare that execption in method

Updated on 03-Jul-2020 08:02:42

  • Related Questions & Answers
  • While chaining, can we throw unchecked exception from a checked exception in java?
  • Are the instances of Exception checked or unchecked exceptions in java?
  • Difference Between Checked and Unchecked Exception in Java
  • How to create a custom unchecked exception in Java?
  • How can we create a custom exception in Java?
  • Checked vs Unchecked exceptions in Java
  • Can we change an exception of a method with throws clause from unchecked to checked while overriding it in java?
  • Can we throw an Unchecked Exception from a static block in java?
  • Checked Vs unchecked exceptions in Java programming.
  • Checked vs Unchecked Exceptions in C#
  • How can the earthing be checked?
  • What is the difference between checked and unchecked exceptions in Java?
  • How can we implement a custom iterable in Java?
  • How can we implement a Custom HashSet in Java?
  • When should we create a user-defined exception class in Java?

When a programmer throw an custom exception he must declare the exception in method?

Using throws keyword we can declare the method which might be exception producing. In order to use a custom exception, you must show classes that call your code that they need to plan for this new type of exception. You do this by declaring that one or more of your methods throws the exception.

How do you declare a method that throws an exception?

The throws keyword is used to declare which exceptions can be thrown from a method, while the throw keyword is used to explicitly throw an exception within a method or block of code. The throws keyword is used in a method signature and declares which exceptions can be thrown from a method.

What are custom exceptions How do you write custom exception in Java?

Steps to create a Custom Exception with an Example.
CustomException class is the custom exception class this class is extending Exception class..
Create one local variable message to store the exception message locally in the class object..
We are passing a string argument to the constructor of the custom exception object..

What happens when a method throws an exception?

It eases the handle exception to the user. Because then all of the exceptions can be handled in a method which is used to run. Mostly it is mainly a method, so that the user does not need to explore inside the method. It also throws keyword force to the compiler to handle the exception which could be occurring.