Go 言語のインターフェース、つまり「インターフェース」とは、メソッドの集合を定義する型であり、オブジェクトの特定の型を意識せずにオブジェクトの動作を記述する抽象型です。 . 型がインターフェイスによって定義されたすべてのメソッドを実装している限り、その型はインターフェイスを実装していると言われます。インターフェイスを使用すると、コードの柔軟性が向上し、コードがよりモジュール化され、拡張可能になります。インターフェイスを通じて、より一般的で柔軟なコードを作成できます。書かれているため、プログラムの理解と保守が容易になります。
# このチュートリアルのオペレーティング システム: Windows 10 システム、Dell G3 コンピューター。
Go 言語では、インターフェイスはメソッドのセットを定義する型です。インターフェイスは、具体的な型を気にせずにオブジェクトの動作を記述する抽象型です。型は、インターフェイスによって定義されたすべてのメソッドを実装している限り、インターフェイスを実装していると言われます。
インターフェイスの定義は次のとおりです。
type myInterface interface { Method1() returnType1 Method2(parameterType) returnType2 // ... }
ここで、myInterface はインターフェイスの名前であり、インターフェイスに含まれるメソッドは中括弧内にリストされています。各メソッドには、名前、パラメータのリスト、および戻り値のリストがあります。インターフェイスには変数は含まれません。
たとえば、面積を計算するメソッドと周囲長を計算するメソッドを含む単純なインターフェイス Shape を定義します:
type Shape interface { Area() float64 Perimeter() float64 }
インターフェイスはコントラクトです。インターフェイスによって定義されたすべてのメソッドが見つかった場合、この型はこのインターフェイスを実装していると言えます。この実装は暗黙的であり、明示的に宣言する必要はありません。
たとえば、面積と周長を計算するメソッドを含む Circle 型がある場合、Circle 型は Shape インターフェイスを実装していると言えます。
type Circle struct { radius float64 } func (c Circle) Area() float64 { return math.Pi * c.radius * c.radius } func (c Circle) Perimeter() float64 { return 2 * math.Pi * c.radius }
上記の例では、Circleこの型は、Shape インターフェイスによって定義された Area() メソッドと Perimeter() メソッドを実装しているため、Circle 型は Shape インターフェイスを実装していると言えます。
インターフェイスを使用すると、コードの柔軟性が向上し、コードがよりモジュール化され、拡張可能になります。インターフェイスを通じて、より一般的で柔軟なコードを作成できるため、プログラムの理解と保守が容易になります。
以上がgolangのインターフェースとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。