Implementei Autocloseable na classe Conta e nas suas filhas (ContaCorrente/ ContaPoupanca) foi codificado o metodo close com um sysout escrito "fechado". Fiz o teste com os números negativos jogando um exceção do tipo IllegalArgumentsExc.
public class TesteContas {
public static void main(String[] args) throws SacaException{
try(ContaCorrente cc = new ContaCorrente(991, 7761)) {
try(ContaPoupanca cp = new ContaPoupanca(881, 331)) {
cc.deposita(210.0);
cp.deposita(350.0);
cp.transfere(cc, 200.0);
}
}catch(IllegalArgumentException ex) {
ex.printStackTrace();
}
}