ホームページ  >  記事  >  バックエンド開発  >  Golangのエラースローメソッド

Golangのエラースローメソッド

尚
オリジナル
2020-01-14 16:13:534009ブラウズ

GolangのエラースローメソッドGo 言語 は、Java や C# 言語のような try...catch 例外処理メソッドを提供せず、代わりに関数の戻り値を通じて層ごとに例外処理メソッドをスローします。

Go 標準パッケージが提供するエラー処理関数:

error はインターフェイスです:

type error interface {
    Error() string
}

エラーの作成方法:

// example 1
func Sqrt(f float64) (float64, error) {
    if f < 0 {
        return 0, errors.New("math: square root of negative number")
    }
    // implementation
}

// example 2
if f < 0 {
    return 0, fmt.Errorf("math: square root of negative number %g", f)
}

カスタマイズ方法error:

// errorString is a trivial implementation of error.
type errorString struct {
    s string
}

func (e *errorString) Error() string {
    return e.s
}

Go 言語には通常 3 つのエラー処理戦略があります:

1. エラー値を返して確認します: 成功とさまざまなエラーは特定の値で表され、上位層はコードはエラー値をチェックして、何が呼び出されているかを判断します。 func

2 の実行ステータス。カスタム エラー タイプ: 特定のエラーはカスタム エラー タイプで表され、上位レベルのコードはタイプを通じてエラー タイプを決定します。アサーション

3. 内部詳細の非表示エラー処理: 上位層のコードは、呼び出された関数によって返されたエラーの詳細を知らず、エラーを直接返すと仮定します。インターフェイスの Error メソッドは人間が見るためのものであり、マシンが見るためのものではありません。通常、Error メソッドによって返された文字列をログに出力するか、コンソールに表示します。 Error メソッドによって返された文字列に特定の文字列が含まれているかどうかを判断して、エラーの処理方法を決定しないでください。

golang についてさらに詳しく知りたい場合は、

golang チュートリアル

列に注目してください。

以上がGolangのエラースローメソッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。