Junior — Middle
Que tipos de exceções ou erros podem ser tratados na linguagem Go?
sobes.tech IA
Resposta da IA
Na linguagem Go, não existe um sistema tradicional de exceções como em algumas outras linguagens. Em vez disso, os erros são tratados usando valores de retorno do tipo error.
As principais formas de lidar com erros em Go:
- Retornar um erro de uma função: a função retorna um valor e um erro, que deve ser verificado.
- Pânico (
panic) e recuperação (recover): usados para lidar com erros críticos que normalmente levam à parada do programa, mas podem ser capturados.
Exemplo de tratamento de erro:
func readFile(filename string) ([]byte, error) {
data, err := os.ReadFile(filename)
if err != nil {
return nil, err
}
return data, nil
}
func main() {
data, err := readFile("file.txt")
if err != nil {
fmt.Println("Erro ao ler o arquivo:", err)
return
}
fmt.Println(string(data))
}
Dessa forma, em Go, erros retornados por funções são tratados, e não exceções no sentido clássico.