Dê uma olhada nos dois métodos a seguir: public static void foo() { try { foo(); } finally { foo(); } } public static void bar() { bar(); } A execução bar()resulta claramente em a StackOverflowError, mas a execução foo()não (o programa parece funcionar indefinidamente). Por que é...