Junior — Middle
Jaké typy výjimek nebo chyb lze v jazyce Go zpracovat?
sobes.tech AI
Odpověď od AI
V jazyce Go neexistuje tradiční systém výjimek, jako v některých jiných jazycích. Místo toho jsou chyby zpracovávány pomocí návratových hodnot typu error.
Hlavní způsoby zpracování chyb v Go:
- Vrácení chyby z funkce: funkce vrací hodnotu a chybu, kterou je třeba zkontrolovat.
- Panik (
panic) a obnova (recover): používají se k řešení kritických chyb, které obvykle vedou k ukončení programu, ale mohou být zachyceny.
Příklad zpracování chyby:
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("Chyba při čtení souboru:", err)
return
}
fmt.Println(string(data))
}
Tímto způsobem jsou v Go zpracovávány chyby vrácené funkcemi, nikoli výjimky v klasickém smyslu.