Ola! Estou com duvida em relação ao catched e uncatched. Eu rodei o codigo exatamente igual ao da aula com a classe conexao e a testa conexão porém o codigo nao compila, ele roda como se fosse do tipo uncatched e sugere a insernção do throws na assinatura do main. Se já estou usando o try qual o motivo desse erro?
Segue código das classe Conexão e TesteConexao abaixo.
public class Conexao implements AutoCloseable{
public Conexao() {
System.out.println("Abrindo conexao");
}
public void leDados() {
System.out.println("Recebendo dados");
throw new IllegalStateException();
}
@Override
public void close() throws Exception {
System.out.println("Fechando conexao");
}
}
public class TestaConexao {
public static void main(String[] args) {// throws Exception
try (Conexao con = new Conexao()){
con.leDados();
}catch (IllegalStateException ex) {
System.out.println("Deu erro na conexão");
}
}
}