nunca irá ocorrer, então o compilador não deixa que vc faça isso.
Se vc realmente quiser lançar uma exceção aí, faça assim
if(true){
thrownewFlowException();
}
Assim vc “engana” o compilador.
arec_metafora
Inválido em que sentido? Que tp de erro está acontecendo?
Se for erro de compilação, nunca testei, mas tenho quase certeza que acontece o que o amigo ChronoTrigger disse: o throw new Exception funciona como um “return” e o código abaixo nunca será acessado…
LPJava
simples! o compilador, nao vai permitir compilar pq a linha 6 jamais vai acontecer entao ele nao pode deixar algo compilar se ele sabe que isso jamais sera executado nem com reza braba a linha 6 executa…
M
marcio_gs
Sem dizer que o método main deve estar assim:
public static void main(String[] args) throws Exception {
//....
}
arec_metafora
marcio_gs:
Sem dizer que o método main deve estar assim:
public static void main(String[] args) throws Exception {
//....
}
Pq? Não precisa não… toda exceção lançada no try vai ser “catcheada” no mesmo bloco. Nenhuma exceção é lançada pro main…
M
marcio_gs
arec_metafora:
marcio_gs:
Sem dizer que o método main deve estar assim:
public static void main(String[] args) throws Exception {
//....
}
Pq? Não precisa não… toda exceção lançada no try vai ser “catcheada” no mesmo bloco. Nenhuma exceção é lançada pro main…
Não sabia disso. Na verdade nunca usei ambas juntas, então pensei que necessitava. Interessante saber.
LPJava
marcio_gs:
Sem dizer que o método main deve estar assim:
public static void main(String[] args) throws Exception {
//....
}
quando vc trata uma excecao nao é necessario declarar. Observe que se a linha 6 fosse comentada/removida o catch trataria a excecao.