Fiquei com uma dúvida quando jogamos a exceção no construtor. No caso, não conseguimos instanciar o objeto con dentro do try devido à exceção, então ele se mantém "null" (da declaração anterior) e ai dá NullPointerException.
Eu não entendi porque quando adicionamos o if(con != null) ele executa o con.fecha();.
Na minha cabeça a referência con se mantem null, então não teria como executar. Entendi algo errado na lógica?