Alguna vez hemos visto este error. Se produce cuando la pila de llamadas a métodos entre clases se desborda debido a un número excesivo y nuestra aplicación se rompe.
Suele producirse cuando codificamos mal la condición de salida en ún método recursivo. Pero, ?puede producirse en un método recursivo bien codificado? Es decir, ?podemos realmente llenar esta pila sin caer en un error de codificación? Para ello deberíamos saber cuantas llamadas soporta nuestra pila antes de romperse, para después contar nuestras llamadas y probar si realmente superan este número en un caso real, o solo lo superan porque nuestro algoritmo está mal codificado.
Pruébalo tu mismo.
public class OverflowErrorCount {
public static int count = 0;
public static void main(String args[]) {
System.out.println(++count);
main(null);
}
}
Debe ser que el post anterior me ha inspirado y quería ver un código Java peculiar, mínimo, sin utilidad aparente pero lleno de sentido y por lo tanto, bello. No sé si lo he conseguido. Se admiten sugerencias y proposiciones en los comentarios.
Popularity: 2% [?]