Sobes.tech
Junior — Middle

Ce reprezintă interfața Error în contextul gestionării erorilor?

sobes.tech AI

Răspuns de la AI

În Go, interfața Error definește un tip pentru gestionarea erorilor și conține o singură metodă:

type error interface {
    Error() string
}

Această metodă returnează o descriere a erorii sub formă de șir de caractere. Orice tip care implementează această metodă este considerat o eroare și poate fi utilizat cu structuri de gestionare a erorilor, de exemplu, cu if err != nil.

Această abordare permite crearea de tipuri de erori personalizate cu informații suplimentare, menținând compatibilitatea cu interfața generală. De exemplu:

type MyError struct {
    Msg string
}

func (e MyError) Error() string {
    return e.Msg
}
}

func doSomething() error {
    return MyError{Msg: "ceva a mers prost"}
}

Astfel, interfața Error este o metodă standard pentru transmiterea și gestionarea erorilor în Go.