Los errores más dificiles de capturar son los de "OutOfMemory" (quedarse sin memoria) ya que en muchos casos la aplicación queda en estado inconsistente.
A mi parecer si la aplicación se queda sin memoria es mejor terminarla, aunque muchas veces es imposible cambiar el código para hacerlo de manera limpia.
Como desarrolladores Java a veces vemos como la máquina virtual java se cuelga o se cae porque hacemos algo mal o por limitaciones del sistema.
La verdad no se muy bien que es lo que estes haciendo, pero podrias capturar el error un con try-catch.
public class RunOutOfMemory {
public static void main
(String [] args
) { try {
long [] array
= new long[Integer.
MAX_VALUE]; System.
out.
println("Mi arreglo tiene un tamaño de: " + array.
length); }
System.
out.
println("El tamaño del arreglo excede el límite de la VM"); }
}
}
O bien con
Un saludo.