veja bem vc coloca tudo que precisa dentro do try, caso de algum erro o catch captura o erro e o que está no try não será executado…o finally será executado independete se o catch capturar ou não a exceção…Coloque o return dentro do try…dependendo de como vc quer que o metodo seja executado…
F
FabioStampedePJ
Foi mal pela falta do BBCode hehehe…
Poisé cara, só que quando eu coloco um return dentro do Try{}, o Eclipse acusa erro de que o método não retorna nada =|
F
fabiophxPJ
Vc precisa colocar um return no try e outro no final do seu bloco try/catch, ou pelo menos neste último.
D
darkseidPJ
Vc pode colocar um return dentro do try e no catch lancar uma exceção, assim:
Caro Fábio, isso acontece, porque todo método não “void” declarado tem que retornar alguma coisa, pelo seu método você tem que colocar um return no “try”, e porque o Eclipse acusa erro?, pelo seguinte, como o método sempre tem que retornar algo no teu caso uma String, nada garante que esse return dentro do try vai ser executado, pois pode-se encontrar uma exceção no meio do caminho antes de chegar no return, por boa prática, vc pode colocar um return no catch tb, para uma página de erro se for uma aplicação web.
é a mesma coisa em if—else, tem que colocar return nos dois ou depois dos dois em um método, pois se não atender uma condição em um ele vai executar em um outro, o Java é inteligente… prevê esses erros em tempo de execução
F
fabiophxPJ
vitorkgb, concordo com vc, por isso falei que tinha que ter no mínimo um return no final do bloco try/catch.
F
FabioStampedePJ
Ahhh valeu galera, agora entendi!
Coloquei o return depois do ultimo catch e funcionou! valeu!
S
SchuenemannPJ
Só te dando uma dica (não sei exatamente o que você quer fazer): o finally será executado de qualquer jeito, independente de ter esse return.
F
FabioStampedePJ
Ok! Só mais uma coisa, o finally será executado mesmo que o método não capture nenhuma exceção?
F
fabiophxPJ
Sim. Finally sempre é executado.
M
matheusPJ
a não ser q seja chamado um System.exit() no try ou catch.
J
jaireltonPJ
Sim, o catch é executado quando é lançada uma exceção e o finally é executado ao terminar o bloco try, tenha ele sido bem sucedido ou não… você pode colocar o return no finally
o não é obrigado a usar o finally, pode tirar ele… o obrigatório é só o par try e o catch
C
C3pOPJ
boa tarde pessoal, blezinha?
por favor me esclarecam quanto a função do return
por exemplo:
tenho um metodo que retorna uma variavel
estaria ele disponibilizando a variavel para que outros metodos a utilizem??? :lol: :lol:
sei que é uma duvida boba, mas não deixa de ser uma duvida
desde já agradeço qualquer esclarecimento
valeuuuuuuuu
G
Guilherme_MelloPJ
“C3pO”:
boa tarde pessoal, blezinha?
por favor me esclarecam quanto a função do return
por exemplo:
tenho um metodo que retorna uma variavel
estaria ele disponibilizando a variavel para que outros metodos a utilizem??? :lol: :lol:
sei que é uma duvida boba, mas não deixa de ser uma duvida
desde já agradeço qualquer esclarecimento
valeuuuuuuuu
A keyword return, é utilizada para terminar a execução de um método (retorna ao método seguinte na pilha de chamada)… pode opicionalmente retornar um valor.
G
GraveDiggerPJ
Sim, com ou sem exceções o finally eh executado
J
JavaDropsPJ
"FabioStampede":
Ola pessoal, venho mais uma vez recorrer aqui aqueles que já passaram por estes erros simples =D
O problema é: Onde devo colocar o return dentro de um bloco try-catch?