A Tour of Go Methods

Go does not have classes. However, you can define methods on struct types.

The method receiver appears in its own argument list between the func keyword and the method name.

package main 

import (
    "fmt"
    "math"
)

type Vertex struct {
    X, Y float64
}
func (v *Vertex) Abs() float64 {//相当于给类添加方法
    return math.Sqrt(v.X * v.X + v.Y * v.Y)
}
func main() {
    v := &Vertex{3, 4}
    fmt.Println(v.Abs())
}

 

posted @ 2014-10-28 18:54  wuhn  阅读(111)  评论(0编辑  收藏  举报