方法是特殊的函数,定义在某一特定的类型上,通过类型的实例来进行调用,这个实例被叫接收者(receiver)。
⽅法总是绑定对象实例,并隐式将实例作为第⼀实参 (receiver)。
方法是函数的语法糖,因为receiver其实就是方法所接收的第1个参数。

函数的基本格式:

// 定义
func FunctionName(parameters) results {
	代码段
}
// 使用
FunctionName(parameters) 

方法的基本格式:

// 定义
func (receiver ReceiverType接收方法类型) MethodName(parameters) results {
	代码段
}
// 使用
receiver.MethodName()

具体使用:

package main

import "fmt"

type myInt int

func addFunc(a, b int) int {
	return a + b
}

func (a myInt) addMethod(b myInt) myInt {
	return a + b
}

func main() {
	a := addFunc(1, 2)
	fmt.Println(a)

	var b myInt
	b = 10
	c := b.addMethod(20)
	fmt.Println(c)
}

Go基础:函数与方法的区别_学习