Que acontece se acabar a memória da java virtual machine?
A sua aplicação fica sem recursos para continuar sua execução interrompendo, abruptamente, sua execução. Isso é ruim, pois se você tem arquivos ou banco de dados abertos a aplicação finaliza com esses recursos abertos.
Como forçar isso?
public static void main(String[] args) {
String[] ss = new String[Integer.MAX_VALUE];
}
Acredito não ser uma boa prática de programação colocar
try {
metodo();
}catch (OutofMemoryException e){// algo do tipo
System.out.print(e.getMessage());
}
pois ocorre é um Erro (não tratável) e não uma Exception (tratável na maioria das vezes ). Erros, em java, interrompem a execução da aplicação tornando o sistema imediatamente indisponível.