package main;import "fmt"//重新定义一个类型//为该INT类型扩展方法type INT int;type A struct { name string;}type B struct { name string;}func main() { a := A{}; a.Print(); //指针传递 a.Print2(); fmt.Println(a); //同上 (*A).Print2(&a); b := B{}; b.Print(); var c INT; c.Print();}//方法method//GO中没有class,但有method//为结构A绑定方法func (a A) Print() { fmt.Println("A");}//指针传递func (a *A) Print2() { //修改了变量的的值 //方法中是可以访问结构的私有字段 a.name = "A";}//为结构B绑定方法func (b B) Print() { fmt.Println("B");}//给INT类型绑定Print方法func (i INT) Print() { fmt.Println("INT");}