Olá, gostaria de entender a diferença entre Throws e throw? Li bastante coisa mas ainda não entendi.
Olá, gostaria de entender a diferença entre Throws e throw? Li bastante coisa mas ainda não entendi.
throws
vai na assinatura do método e serve para indicar aos métodos que chamam este que eles precisam tratar essa exceção ou lançar eles mesmo essa exceção, especificando isso na sua assinatura. Exemplo:
public void teste() throws Exception {
// faz alguma coisa
}
throw
lança uma exceção, ou seja, interrompe o fluxo de execução, enviando a exceção lancada para o método que me chamou. Se em algum momento da pilha de execução essa exceção for tratada, a execução continua a partir dali. Senão, o programa quebra. Exemplo:
public void teste2() {
// faz alguma coisa
throw new Exception("Ocorreu um erro");
}