Académique Documents
Professionnel Documents
Culture Documents
Digamos ento que o objeto pessoa receba um valor invlido para ser
atribudo na propriedade Idade. Como tratar este problema? O Objeto
pessoa pode ignorar a ordem. OU exibir uma mensagem na tela. Mas
e se for imprenscindvel para o objeto externo saber que a atribuio
tenha ocorrido com sucesso? E se o sistema estiver rodando num
servio windows e no existir uma tela para exibir a mensagem?
O conceito de tratamento de excees estruturadas no
necessariamente parte da orientao a objetos, mas ele foi muito bem
vindo no panorama atual de desenvolvimento de software. Uma
exception uma situao inesperada que arremeada por um
mtodo invocado, direcionada para o mtodo que o invocou.
Por exemplo: o motorista do caminho no encontrou ningum no
endereo que o cliente informou, que pudesse receber a encomenda.
Ele ento lana a exceo para seu superior imediato, o mtodo que o
invocou, seu supervisor. O supervisor olhar para a exception e ver
se trata-se de um problema que ele tenha autonomia para resolver. Se
no tiver ele repassa ela para o prximo superior da pilha. O mtodo
que o invocou. O gerente de contas da loja vai verificar que passou o
endereo do cliente errado e corrig-lo ou concluir que no possui o
endereo correto e acionar o cliente para se informar a respeito.
Ao resolver o problema, todos so acionados novamente at que o
motorista tente fazer uma nova entrega.
Assim funciona o tratamento de excees na OOP. Seus mtodos
podem receber exceptions que descrevem situaes inesperadas. Se
no houver implementao de tratamento para elas, eles a lanam
(throw) para o mtodo que os chamou, at chegar no topo da pilha (no
caso, o ncleo do sistema) resultando em um erro, que ir interromper
todo o sistema.