Considere una estantería en la que los libros se colocan uno sobre otro. Ahora, si la persona quiere leer el libro que colocó primero, para hacerlo, todos los libros sobre el primer libro deben eliminarse para alcanzar el libro deseado. Ese es el libro que se colocó primero al principio mismo. El método por el cual la computadora almacena libros conocidos como elementos de tal manera se llama Stack .
Es un tipo de dato abstracto que tiene las siguientes operaciones:
Operaciones |
Acción |
---|---|
empujar() | Insertar elementos |
estallido() | Eliminación de elementos |
esta vacio() | Para comprobar si la pila está vacía |
está lleno() | Para comprobar si la pila ya está llena |
arriba() o mirar() | Para acceder al elemento superior de la pila |
Ahora, según las funciones en Stacks , una excepción es
- pila
- pila
- pila
Para imprimir la excepción, existe un método para esta estructura de datos conocido como printstackTrace() . Se utiliza en el controlador de excepciones de una excepción en particular para manejar la excepción. Este es un método de la clase arrojable de Java que imprime el objeto de excepción arrojable, así como otra información como el número de línea donde ocurre la excepción y el nombre de la clase donde ocurrió la excepción. Throwable es una superclase para todas las clases de excepción.
Ambos seguimientos de pila se analizan a continuación:
- Seguimiento de pila de una sola línea
- Seguimiento de pila de varias líneas
A. Rastreo de pila de una sola línea: la mayoría de las excepciones genéricas se encuentran en esta categoría. Hay varias excepciones, pero para la implementación, se tiene en cuenta la parte ‘ ArrayIndexOutOfBound ‘ para la implementación .
Java
// Importing Classes/Files import java.io.*; class GFG { // Main Driver Method public static void main(String[] args) { // Inserting elements into array int a[] = { 1, 2, 3 }; // Try-Catch Block try { // Exception occurs System.out.println(a[5]); } // Try-Catch Block catch (ArrayIndexOutOfBoundsException e) { // Printing Exception Object as well as // the line where Exception occur e.printStackTrace(); } } }
Error de tiempo de ejecución:
java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 3 at GFG.main(File.java:9)
B. Rastreo de pila de varias líneas: esta condición ocurre cuando llamamos a la función dentro de otra función y si alguna función arroja una excepción, vuelve a rastrear toda la ruta donde llama con el método printstackTrace() .
Java
// Importing Classes/Files import java.io.*; class GFG { // Creating random function to test static void check2() { // Try-catch block for exception try { int a = 5 / 0; // Exception occur as logically // In math '/' operatop satisfies x/y where y!=0 } // Catch Block to catch exception if occurs catch (Exception e) { // retrace all the path where this function call e.printStackTrace(); } } // calling the function check2() static void check() { check2(); } // Driver Main Method public static void main(String[] args) { check(); // calling the function check() } }
Error de tiempo de ejecución:
java.lang.ArithmeticException: / by zero at GFG.check2(File.java:11) at GFG.check(File.java:7) at GFG.main(File.java:19)
Publicación traducida automáticamente
Artículo escrito por zack_aayush y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA