[Go] go语言中使用方法声明给类定义方法

2021-09-08 14:50:51 浏览数 (1)

方法声明就是在方法名前面增加一个类型声明

这样这个方法就是这个类型的成员方法了

不止是可以用于struct ,任何type定义的类型都可以增加成员方法

例如下面这个给封装的[]int 切片类型增加的方法

代码语言:javascript复制
type Ages []int

func (a *Ages) AgeAdd(num int) {
    ages := append([]int(*a), num)
    *a = ages
}

func TestMyage(t *testing.T) {
    var ages Ages
    ages.AgeAdd(10)
    ages.AgeAdd(20)
    t.Logf("% v", ages)
}

可以对一些常见的类型进一步封装

0 人点赞