Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Aula 04 Exercício 05

Pq o main deve jogar IOexception e não funciona com o FileNotFoundException ??

M joga IO M2 joga FileNotFound

Onde foi que me perdi aqui? rssssss Um método que chama outro pode jogar a mesma exception ou uma "menor" que ela não é?

class A {
    void m2() throws java.io.FileNotFoundException {
        System.out.println("e");
        new java.io.FileInputStream("a.txt");
        System.out.println("f");
    }
    void m() throws java.io.IOException {
        System.out.println("c");
        m2();
        System.out.println("d");
    }
    public static void main(String[] args) 
                throws java.io.FileNotFoundException {
        System.out.println("a");
        new A().m();
        System.out.println("b");
    }
}
2 respostas
solução!

FileNotFoundException é filha de IoException. Ou seja, nem toda IOException é uma FileNotFoundException. Por isso que o Java não compila seu código... O main lança FileNotFoundException quando deveria lançar a mais genérica, Io.

Capteeeei! rsss valeu !

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software