Zusammenfassung der Ressource
Frage 1
Frage
Imagine um método que retorna um inteiro. Marque os problemas de retornar -1 quando um erro acontecer nesse método.
Antworten
-
Um numero negativo pode causar erros de cálculo
-
Não ser claro que esse retorno significa um erro para quem invoca o método
-
-1 pode ser um retorno válido dependendo dos parâmetros
-
Um número próximo de 0 pode ser um problema em divisões
Frage 2
Frage
As exceções que não precisam ser tratadas são subclasses de:
Antworten
-
Exception
-
RuntimeException
-
SuperficialException
-
NonCriticalError
Frage 3
Frage
Considere um método onde uma exceção pode ser lançada. Como esse método pode lidar com o potencial lançamento dessa exceção?
Antworten
-
Com blocos try/catch
-
Utilizando um bloco finally
-
Declarando com a cláusula throws na assinatura do método
-
Com um comando condicional "if"
Frage 4
Frage
Considere o seguinte código:
try{
a();
b();
c();
}catch(Exception e){
d();
}
Se ocorrer uma exceção em b(), quais métodos e em que ordem eles serão executados?
Antworten
-
a(), b(), d(), c()
-
a(), b(), c(), d()
-
a(), b(), d()
-
a(), b()
-
a(), b(), c()
Frage 5
Frage
Que informações você pode encontrar lendo o stack trace de uma exceção?
Antworten
-
Mensagem do erro
-
Valor das variáveis no momento do erro
-
Classe da exceção
-
Pilha de execução dos métodos no momento que a exceção foi criada
-
Parâmetros passados para os métodos
Frage 6
Frage
Imagine que você queira fazer um teste que verifique se uma exceção ocorre durante a execução do método de teste. Qual atributo posso colocar na anotação @Test para dizer a exceção que espero que aconteça?
Antworten
-
expect
-
expected
-
except
-
excepted
Frage 7
Frage
Considere o código a seguir de um teste que precisa verificar se uma exceção ocorre e o conteúdo da mensagem de erro.
@Test
public void testeErro(){
try{
instancia.metodo();
????
}catch(Exception e){
assertEquals(MENSAGEM_ESPERADA, e.getMessage());
}
}
Que comando precisa ser colocado na linha de código com ???? para que o teste verifique que a exceção realmente ocorreu em instancia.metodo()?