Junior — Middle
Wat vertegenwoordigt de interface Error in de context van foutafhandeling?
sobes.tech AI
Antwoord van AI
In Go definieert de Error-interface een type voor foutafhandeling en bevat het slechts één methode:
type error interface {
Error() string
}
Deze methode geeft een stringbeschrijving van de fout terug. Elk type dat deze methode implementeert, wordt als een fout beschouwd en kan worden gebruikt met foutafhandelingsconstructies zoals if err != nil.
Deze aanpak maakt het mogelijk om aangepaste fouttypes met extra informatie te maken, terwijl de compatibiliteit met de algemene interface behouden blijft. Bijvoorbeeld:
type MyError struct {
Msg string
}
func (e MyError) Error() string {
return e.Msg
}
}
func doSomething() error {
return MyError{Msg: "er is iets misgegaan"}
}
Zo is de Error-interface een standaardmanier om fouten in Go door te geven en te verwerken.