package main import (         "fmt"         "math" ) type Rectangle struct { // 矩形         width float64         height float64 } type Circle struct { // 圆形         radius float64 } type Areable interface{ // 接口:一组method签名的组合,通过interface来定义对象的一组行为。 // 只要是实现了interface中的所有的method的结构体,就可以认为是这个interface的实例,Duck typing         area() float64 } func (r Rectangle) /* 函数的接受者Receiver */ area() float64 /* 返回值类型*/ {         return r.width * r.height } func (c Circle) /* 函数的另一个接受者Receiver */ area() float64 /* 返回值类型*/{         return c.radius * c.radius * math.Pi } func main(){         ra := Rectangle{5,5}         ca := Circle{2.5}         fmt.Println(ra.area())         fmt.Println(ca.area()) }