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:
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
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.
LinkedInArtículo relacionado - Java Error
- Arreglar Java fue iniciado por el código de salida devuelto = 1
- Arreglar JAVA_HOME no se puede determinar a partir del error de registro en R
- Arreglar java.io.IOException: No queda espacio en el dispositivo en Java
- Arreglar Java.IO.NotSerializableException en Java
- Arreglar Java.Lang.IllegalStateException de Android: no se pudo ejecutar el método de la actividad
- Arreglar Java.Lang.NoClassDefFoundError: No se pudo inicializar el error de clase