Junior — Middle
Co oznacza interfejs Error w kontekście obsługi błędów?
sobes.tech AI
Odpowiedź od AI
W Go interfejs Error definiuje typ do obsługi błędów i zawiera jedną metodę:
type error interface {
Error() string
}
Ta metoda zwraca opis błędu w formie łańcucha znaków. Każdy typ, który implementuje tę metodę, jest uważany za błąd i może być używany z konstrukcjami obsługi błędów, na przykład z if err != nil.
Takie podejście pozwala na tworzenie własnych typów błędów z dodatkowymi informacjami, zachowując kompatybilność z ogólnym interfejsem. Na przykład:
type MyError struct {
Msg string
}
func (e MyError) Error() string {
return e.Msg
}
}
func doSomething() error {
return MyError{Msg: "coś poszło nie tak"}
}
W ten sposób interfejs Error jest standardowym sposobem przekazywania i obsługi błędów w Go.