java.lang.ClassCastException en Java

Shiv Yadav 15 febrero 2024
  1. la java.lang.ClassCastException en Java
  2. Resolver la java.lang.ClassCastException en Java
java.lang.ClassCastException en Java

Cuando intentamos convertir un objeto de la clase principal al objeto de la clase secundaria, se genera la excepción java.lang.ClassCastException. Sin embargo, también puede arrojarse si intentamos convertir un objeto entre dos tipos que no están relacionados en absoluto.

Este artículo lo ayudará a manejar la java.lang.ClassCastException de Java.

la java.lang.ClassCastException en Java

El siguiente programa crea un objeto obb de tipo Object y escribe ese objeto obb en un objeto shh de tipo String. Mientras intentamos encasillar un objeto a su tipo secundario, terminamos con Java.lang porque sabemos que la clase Object es la clase principal de todas las clases en Java.ClassCastException.

Código - classCast.java:

public class classCast {
  public static void main(String[] args) {
    try {
      Object obb = new Object();

      String shh = (String) obb;

      System.out.println(shh);
    } catch (Exception e) {
      System.out.println(e);
    }
  }
}

Producción:

java.lang.Object no se puede convertir a java.lang.String

Resolver la java.lang.ClassCastException en Java

Asegúrese de que el nuevo tipo pertenezca a una de las clases principales de la clase de la que está intentando encasillar un objeto, o evite encasillar un objeto principal a su tipo secundario para evitar encontrar la ClassCastException. Los genéricos, que ofrecen validación en tiempo de compilación, se pueden usar para evitar ClassCastException mientras se utilizan las colecciones.

Es una excepción no verificada ya que es una clase secundaria RuntimeException. Cuando intentamos encasillar inapropiadamente un curso de un tipo a otro, como cuando intentamos encasillar un objeto principal en un tipo secundario o encasillar un objeto en una subclase que no es una instancia, la JVM genera esta excepción automáticamente.

Código - classCast.java:

package classcaste;

public class classCast {
  public static void main(String[] args) {
    try {
      String shh = "shiv";
      Object obb = (Object) shh;

      System.out.println(obb);
    } catch (Exception e) {
      System.out.println(e);
    }
  }
}

Producción :

shiv
Autor: Shiv Yadav
Shiv Yadav avatar Shiv Yadav avatar

Shiv is a self-driven and passionate Machine learning Learner who is innovative in application design, development, testing, and deployment and provides program requirements into sustainable advanced technical solutions through JavaScript, Python, and other programs for continuous improvement of AI technologies.

LinkedIn

Artículo relacionado - Java Error