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");
    }
} 
            