ClassCastExceptionClassCastException
Un oggetto viene convertito a un tipo di cui non è un'istanza.
Cause di questo errore
Il tipo a runtime dell'oggetto non è compatibile con il tipo di destinazione nel cast. Si verifica spesso durante il downcast da una superclasse o quando le collezioni contengono tipi misti.
Come correggerlo
Usare instanceof per verificare il tipo prima del cast. Usare i generici per garantire la type safety in fase di compilazione. Rivedere la gerarchia di classi per assicurarsi che il cast sia valido.
Esempio
Object obj = "hello";
Integer i = (Integer) obj;Codici di errore correlati
ClassNotFoundExceptionClassNotFoundException
Una classe non può essere trovata nel classpath a runtime.
IllegalArgumentExceptionIllegalArgumentException
Un metodo riceve un argomento non valido per il suo intervallo o formato atteso.
NumberFormatExceptionNumberFormatException
Una stringa non può essere analizzata come numero.
CloneNotSupportedExceptionCloneNotSupportedException
Il metodo clone() viene chiamato su un oggetto la cui classe non implementa Cloneable.
NoSuchFieldErrorNoSuchFieldError
A runtime si fa riferimento a un campo che non esiste nella classe.
IllegalThreadStateExceptionIllegalThreadStateException
Un'operazione su un thread viene eseguita quando il thread non si trova nello stato appropriato.