自訂處理 Golang 錯誤的方法為:建立自訂錯誤類型,實作 error.Error 介面。在實戰案例中,使用自訂錯誤處理程序以更具體地指定錯誤訊息,以便於偵錯和處理。
如何自訂處理 Golang 中的錯誤?
Golang 提供了內建的錯誤處理機制,但有時你可能需要自訂處理錯誤。本教學將教你如何建立自訂錯誤處理程序,並在實戰案例中應用它們。
自訂錯誤處理程序
要建立自訂錯誤處理程序,請使用 error.Error
介面。此介面接受一個字串類型的錯誤描述作為參數。
package myerrors import "fmt" type MyError struct { errorString string } func (e *MyError) Error() string { return e.errorString } func NewMyError(errorString string) error { return &MyError{errorString: errorString} }
NewMyError
函數傳回實作 error
介面的 MyError
型態。 Error
方法傳回錯誤描述字串。
實戰案例:驗證使用者輸入
假設我們有一個函數 ValidateUserInput
,它驗證使用者輸入,如果輸入無效,則傳回錯誤。
package main import ( "fmt" "log" "myerrors" ) func ValidateUserInput(input string) error { if input == "" { return myerrors.NewMyError("输入为空") } if len(input) < 5 { return myerrors.NewMyError("输入长度太短") } return nil } func main() { input := "Golang" err := ValidateUserInput(input) if err != nil { log.Fatalf("输入验证失败: %v", err) } fmt.Println("输入已验证成功") }
在 ValidateUserInput
函數中,我們使用 NewMyError
函數建立自訂錯誤。然後,我們在 main
函數中檢查錯誤並列印相應的錯誤訊息。
透過使用自訂錯誤處理程序,我們可以更具體地指定錯誤訊息,從而更容易偵錯和處理。
以上是如何自訂處理 Golang 中的錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!