Eu fiquei com dúvida numa questão, se você tem uma exceção no código, em vez de utilizar o "try " e o "catch" não é melhor para o código você solucioná-lo de modo a evitar que tal exceção ocorra?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Eu fiquei com dúvida numa questão, se você tem uma exceção no código, em vez de utilizar o "try " e o "catch" não é melhor para o código você solucioná-lo de modo a evitar que tal exceção ocorra?
Boa tarde Luiz, tudo bem?
A meu ver, não teria como simplesmente solucionar todas as possíveis exceções no código, até por que tem coisas que simplesmente não tem como evitar o erro. Como, por exemplo: no curso de Java IO temos que pegar um arquivo é ler ele, mas se o usuário por acidente errar o caminho ao digitar? Como o programa iria procurar o arquivo? Para isso teríamos que lançar uma exceção para o usuário dizendo que o caminho está errado, para assim ele corrigir.
Viu? Não tem como assegurar tudo em nosso código, por isso utilizamos o try e o catch.
Olá Luiz! Tudo bem?
Como o Fábio comentou muito bem, as exceções nos ajudam a identificar erros que provavelmente irão ocorrer em algum momento, e nos ajudam a tratar desses erros.
Na maioria das vezes não é uma opção fazer um código que não tenha possibilidade de erros (todo sistema mais elaborado que criarmos, em algum momento terá que tratar os possíveis erros e exceções), e isso ocorre pois estamos fazendo sistemas que serão utilizados por pessoas... sempre há a possibilidade de alguém acidentalmente tentar realizar o input (inserção de dados) que não deveria, ou mesmo que tente de propósito fazer isso. É nesse momento que as exceções nos ajudam, tratando o erro e mantendo o projeto preparado para lidar com os possíveis tipos de erros que ocorreriam.
Por exemplo... imagine que criamos um sistema que deveria receber o nome de um cliente e um número inteiro... O que nos garante que nunca o usuário tentará inserir letras onde deveriam haver números, ou vice-versa? Nesse momento exceções são lançadas para impedir que o sistema siga executando com o erro que foi causado pelo usuário. Isso nos traz mais segurança para o sistema, garantindo que os possíveis erros sejam percebidos e tratados. (Esse é um exemplo bem simples de como as exceções nos ajudam a controlar possíveis erros).
Quanto a questão de usar o try e o catch, em alguns momentos você perceberá que o código te obrigará a implementar os dois e em outros momentos não. Seguindo adiante no curso você conhecerá as checked exceptions e as unchecked exceptions, que são o motivo para isso ocorrer.
Seguindo adiante no curso você entenderá cada vez mais sobre como as exceções são importantes para nosso projetos, e como vamos nos acostumando a lidar com elas.
Vou deixar abaixo algumas recomendações de pesquisa para caso você decida se aprofundar no assunto:
Se eu puder te ajudar em algo mais nesse tema, é só falar! 😄
Acabei sendo ajudado também com essas recomendações sobre o tema.
Obrigado Guilherme!