関数
関数は、独立して実行できるコードのブロックです。引数を受け取り、戻り値を返すことができます。
例:
package main
import "fmt"
// 関数の定義
func add(a int, b int) int {
return a + b
}
func main() {
result := add(3, 5)
fmt.Println(result) // 出力: 8
}
メソッド
メソッドは、特定の型に関連付けられた関数のことです。メソッドは、レシーバーと呼ばれる特別な引数を持ち、その型のインスタンスに対して呼び出されます。
例:
package main
import "fmt"
// 構造体の定義
type Rectangle struct {
width, height int
}
// メソッドの定義
func (r Rectangle) Area() int {
return r.width * r.height
}
func main() {
rect := Rectangle{width: 10, height: 5}
area := rect.Area() // メソッドを呼び出し
fmt.Println(area) // 出力: 50
}
まとめ
- 関数は独立しており、特定の型に依存しません。
- メソッドは特定の型に関連付けられ、その型のインスタンスに対して呼び出されます。