Programa Java para usar Catch para manejar la excepción

La excepción es que el evento ocurre cuando el programa se está ejecutando. Debido a esta excepción, el flujo normal del programa sufrirá interrupciones. Cada vez que ocurre una excepción en el método, el método crea un objeto y lo envía al sistema de tiempo de ejecución. Por ejemplo, el archivo que debe abrirse no se encuentra, la excepción de clase no encontrada, la excepción aritmética, la excepción de SQL, etc.

Para manejar estas excepciones, existen 4 técnicas estándar: 

  • Trata de atraparlo
  • Lanzar
  • Lanza
  • Uso de la interfaz HandlerExceptionResolver (solo en Spring-framework)

El uso de captura se describe a continuación: 

Sintaxis:

try {

    // Put the code in the try block which may occur any
    // kind of exception
}
catch (ExceptionName e) {

    
    // handle the exception
}

Hay dos ejemplos discutidos a continuación:

  1. Uso de clase de excepción predefinida
  2. Uso de la definición de clase de excepción propia

Ejemplo 1: uso de catch con una clase de excepción predefinida

Este es un ejemplo de una excepción predefinida que es manejada por el bloque try and catch.

Java

// Importing Classes/Files
import java.io.*;
import java.util.*;
 
// Importing Scanner Class for user input
import java.util.Scanner;
 
class GFG {
   
    // Main driver method
    public static void main(String[] args)
    {
        // Taking input from user
        Scanner input = new Scanner(System.in);
 
        // Taking input of first number
        System.out.println("Enter the first number");
        Integer number1 = input.nextInt();
 
        // Taking input of second number
        System.out.println("Enter the second number");
        Integer number2 = input.nextInt();
 
        // Considering values in order to show execution
        // number1 = 30; number2 = 10;
 
        try {
 
            // Dividing both the numbers
            int result = number1 / number2;
 
            // If number2 = 0, method will create the object
            // of ArithmeticException class and throw it
            System.out.println("Result is " + result);
            // Printing the result
        }
 
        // If there is any  exception in the try block
        // then catch will handle the exception
        catch (ArithmeticException e) {
 
            // Message printed after catching the exception
            System.out.println("Dividing by zero");
        }
    }
}

Producción:

 Ejemplo 2: uso de catch al definir la clase de excepción 

En este ejemplo, la excepción está definida por el usuario en la que la clase de excepción se escribe de la siguiente manera:

Java

// Java Program to Use catch to handle the exception
 
// Importing generic Classes/Files
import java.io.*;
import java.util.*;
 
class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
 
        // Taking input from keyboard/user
        Scanner input = new Scanner(System.in);
 
        // Enter any name
        System.out.println("Enter the name");
        String name = input.next();
        try {
            // Enter age
            System.out.println("Enter the age");
 
            // Using nextInt function to read integer
            Integer age = input.nextInt();
            if (age <= 18) {
                MyException me = new MyException();
                throw me;
                // If age is less then equal to 18 then the
                // object of MyException class will be throw
                // here
            }
            else
 
            // If age is greater then 18 i.e no exception is
            // there then try block will execute
            {
                System.out.println("name:" + name);
                System.out.println("age:" + age);
            }
        }
        catch (MyException e)
        // If the exception will occur then the object that
        // throw in the try block will be copied in to this
        // object
        {
            System.out.println(e);
        }
    }
}
// User defined MyException class
class MyException extends RuntimeException {
    public String toString()
    {
        // toString method will get Override here
        return "Age must be greater then 18";
    }
}

 

Input 1:
Enter the name : Geek
Enter the age: 18

Output: 
Age must be greater then 18  // Age is equal to 18 so the exception is occurred

Input 2:
Enter the name : Geek
Enter the age: 20

Output:
name: Geek
age:20                      // Age is greater then 18 so no exception.

Publicación traducida automáticamente

Artículo escrito por aman55 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *