Go语言接口用法实例
本文实例讲述了Go语言接口用法。分享给大家供大家参考。具体分析如下:
接口类型是由一组方法定义的集合。
接口类型的值可以存放实现这些方法的任何值。
packagemain
import(
"fmt"
"math"
)
typeAbserinterface{
Abs()float64
}
funcmain(){
varaAbser
f:=MyFloat(-math.Sqrt2)
v:=Vertex{3,4}
a=f //aMyFloatimplementsAbser
a=&v//a*VerteximplementsAbser
a=v //aVertex,doesNOT
//implementAbser
fmt.Println(a.Abs())
}
typeMyFloatfloat64
func(fMyFloat)Abs()float64{
iff<0{
returnfloat64(-f)
}
returnfloat64(f)
}
typeVertexstruct{
X,Yfloat64
}
func(v*Vertex)Abs()float64{
returnmath.Sqrt(v.X*v.X+v.Y*v.Y)
}
希望本文所述对大家的Go语言程序设计有所帮助。