a) um bloco finally é obrigatório. bloco finally não é obrigatório, mas se existir será sempre executado.
b) um bloco try deve se seguir imediatamente ao bloco catch. O contrário
c) o bloco finally executará se o aplicativo fechar antes do bloco try chamando o método System.exit. Se o aplicativo fechar antes do bloco try, ele não executará nem o catch nem o finally.
d) um bloco catch deve se seguir imediatamente a um bloco finally. O contrário
e) pelo menos um bloco catch ou um bloco finally deve se seguir imediatamente ao bloco try. CORRETO.