Junior — Middle
Ce tipuri de excepții sau erori pot fi gestionate în limbajul Go?
sobes.tech AI
Răspuns de la AI
În limbajul Go, nu există un sistem tradițional de excepții, ca în unele alte limbaje. În schimb, erorile sunt gestionate folosind valori de întoarcere de tip error.
Principalele modalități de gestionare a erorilor în Go:
- Returnarea unei erori dintr-o funcție: funcția returnează o valoare și o eroare, care trebuie verificată.
- Panic (
panic) și recuperare (recover): sunt folosite pentru a gestiona erorile critice, care de obicei duc la oprirea programului, dar pot fi capturate.
Exemplu de gestionare a erorilor:
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("Eroare la citirea fișierului:", err)
return
}
fmt.Println(string(data))
}
Astfel, în Go, erorile returnate de funcții sunt gestionate, nu excepțiile în sensul clasic.