Sobes.tech
Junior — Middle

Xatoliklarni boshqarish kontekstida Error interfeysi nima anglatadi?

sobes.tech AI

AIdan javob

Go tilida Error interfeysi xato bilan ishlash uchun turini belgilaydi va faqat bitta metodni o'z ichiga oladi:

type error interface {
    Error() string
}

Ushbu metod xato haqida satr shaklida tavsifni qaytaradi. Ushbu metodni amalga oshiradigan har qanday tur xato hisoblanadi va if err != nil kabi xato bilan ishlash konstruktsiyalarida ishlatilishi mumkin.

Ushbu yondashuv qo'shimcha ma'lumotlar bilan o'ziga xos xato turlarini yaratishga imkon beradi va umumiy interfeys bilan mos kelishini saqlaydi. Masalan:

type MyError struct {
    Msg string
}

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

func doSomething() error {
    return MyError{Msg: "narsa noto'g'ri ketdi"}
}

Shunday qilib, Error interfeysi Go'da xatolarni uzatish va boshqarish uchun standart usuldir.