タイトル: Golang の同名メソッドの詳細説明
Golang では、同じ名前のメソッドは、同じ型で定義された複数のメソッドを参照します。メソッド名は同じですがパラメータは同じです。 異なる状況をリストします。この機能により、さまざまなパラメータ タイプに基づいてさまざまなロジックをより柔軟に実装できるようになります。この記事では、Golang で同じ名前のメソッドを使用する方法を詳細に説明し、具体的なコード例で説明します。
Golang では、パラメータリストが異なる限り、同じ型で同じ名前の複数のメソッドを定義できます。以下に簡単な例を示します。
package main import "fmt" type Person struct { Name string Age int } func (p Person) SayHello() { fmt.Printf("Hello, my name is %s ", p.Name) } func (p Person) SayHelloTo(name string) { fmt.Printf("Hello, %s, my name is %s ", name, p.Name) } func main() { p1 := Person{Name: "Alice", Age: 25} p1.SayHello() p1.SayHelloTo("Bob") }
上記の例では、Person
型と、同じ名前の 2 つのメソッド SayHello
および SayHelloTo を定義します。
、パラメータリストが異なります。 SayHello
メソッドは Person
型をパラメータとして受け取りますが、SayHelloTo
メソッドは string
をパラメータとして受け取ります。
同じ名前のメソッドを呼び出すと、コンパイラーはメソッドのパラメーター リストに基づいて、呼び出すメソッドを自動的に照合します。以下は、同じ名前のメソッドを呼び出す例です:
func main() { p1 := Person{Name: "Alice", Age: 25} p1.SayHello() p1.SayHelloTo("Bob") }
上記のコードを実行すると、出力は次のようになります:
Hello, my name is Alice Hello, Bob, my name is Alice
以上がGolang の同じ名前のメソッドを詳しく見るの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。