Errores V/s Excepciones en Java

En java, tanto los errores como las excepciones son subclases de la clase java.lang.Throwable. El error se refiere a una operación ilegal realizada por el usuario que resulta en el funcionamiento anormal del programa. Los errores de programación a menudo pasan desapercibidos hasta que el programa se compila o ejecuta. Algunos de los errores impiden que el programa se compile o ejecute. Por lo tanto, los errores deben eliminarse antes de compilar y ejecutar. Es de tres tipos:

  • Tiempo de compilación
  • tiempo de ejecución
  • Lógico

Mientras que las excepciones en java se refieren a un evento no deseado o inesperado, que ocurre durante la ejecución de un programa, es decir, en tiempo de ejecución, que interrumpe el flujo normal de las instrucciones del programa.

Ahora analicemos varios tipos de errores para obtener una mejor comprensión de las arrays. Como se explica en el encabezado, un error indica problemas graves que una aplicación razonable no debería tratar de detectar. Los errores son condiciones que no se pueden recuperar mediante ninguna técnica de manipulación. Seguramente provoca la terminación del programa de forma anormal. Los errores pertenecen al tipo no verificado y ocurren principalmente en tiempo de ejecución. Algunos de los ejemplos de errores son errores de falta de memoria o errores de bloqueo del sistema. 

Ejemplo 1 Error en tiempo de compilación

Java

// Java Program to Illustrate Error
// Stack overflow error via infinite recursion
 
// Class 1
class StackOverflow {
 
    // method of this class
    public static void test(int i)
    {
        // No correct as base condition leads to
        // non-stop recursion.
        if (i == 0)
            return;
        else {
            test(i++);
        }
    }
}
 
// Class 2
// Main class
public class GFG {
 
    // Main driver method
    public static void main(String[] args)
    {
        // Testing for error by passing
        // custom integer as an argument
        StackOverflow.test(5);
    }
}

Producción: 

Ejemplo 2

Java

// Java Program to Illustrate Run-time Errors
 
// Main class
class GFG {
 
    // Main driver method
    public static void main(String args[])
    {
 
        // Declaring and initializing numbers
        int a = 2, b = 8, c = 6;
 
        if (a > b && a > c)
            System.out.println(a
                               + " is the largest Number");
        else if (b > a && b > c)
            System.out.println(b
                               + " is the smallest Number");
 
        // The correct message should have been
        // System.out.println
        // (b+" is the largest Number"); to make logic
        else
            System.out.println(c
                               + " is the largest Number");
    }
}
Producción

8 is the smallest Number

Ahora, detengámonos en Excepciones , que indican las condiciones que una aplicación razonable podría querer captar. Las excepciones son las condiciones que ocurren en tiempo de ejecución y pueden causar la finalización del programa. Pero son recuperables usando palabras clave de prueba, captura y lanzamiento. Las excepciones se dividen en dos categorías:

Excepciones comprobadas como IOException conocidas por el compilador en tiempo de compilación, mientras que excepciones no comprobadas como ArrayIndexOutOfBoundException conocidas por el compilador en tiempo de ejecución. Es causado principalmente por el programa escrito por el programador.

Excepción de ejemplo

Java

// Java program illustrating exception thrown
// by Arithmetic Exception class
 
// Main class
class GFG {
 
    // main driver method
    public static void main(String[] args)
    {
        int a = 5, b = 0;
 
        // Try-catch block to check and handle exceptions
        try {
 
            // Attempting to divide by zero
            int c = a / b;
        }
        catch (ArithmeticException e) {
 
            // Displaying line number where exception occurred
            // using printStackTrace() method
            e.printStackTrace();
        }
    }
}

Producción: 

Finalmente, ahora cierre el artículo trazando las diferencias entre ellos en un formato tabular como se proporciona a continuación de la siguiente manera:

errores Excepciones
No es posible recuperarse de un error. Podemos recuperarnos de las excepciones usando el bloque try-catch o devolviendo las excepciones a la persona que llama.
Todos los errores en Java son de tipo desmarcado. Las excepciones incluyen tanto el tipo marcado como el no marcado.
Los errores son causados ​​principalmente por el entorno en el que se ejecuta el programa. El programa en sí es responsable de causar excepciones.

Los errores pueden ocurrir tanto en tiempo de compilación como en tiempo de ejecución. Tiempo de compilación: por ejemplo, error de sintaxis

Tiempo de ejecución: error lógico.

Todas las excepciones ocurren en tiempo de ejecución, pero el compilador conoce las excepciones marcadas, mientras que las no marcadas no.
Se definen en el paquete java.lang.Error. Se definen en el paquete java.lang.Exception
Ejemplos: java.lang.StackOverflowError, java.lang.OutOfMemoryError Ejemplos: Excepciones comprobadas: SQLException, IOException Excepciones no comprobadas: ArrayIndexOutOfBoundException, NullPointerException, ArithmeticException.

Publicación traducida automáticamente

Artículo escrito por AnushkaKhattri 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 *