方法与接收器
方法
type student struct{
name string
score int32
number int32
}
func (s *student)test() {
fmt.Println(s.name)
}
接收器
方法中的载体就是接收器,通常是一个指针。
接口
golang的接口Interface就是一系列方法的集合
type student interface{
name() string
score() int32
number() int32
}
type stu struct{
name_ string
score_ int32
number_ int32
}
func (s *stu) name() (string) {
fmt.Println(s.name_)
return s.name_
}
func (s *stu)score() (int32){
fmt.Println(s.score_)
return s.score_
}
func (s *stu)number() (int32){
fmt.Println(s.number_)
return s.number_
}
func main(){
var a student
temp := &stu{
name_:"周杰伦",
score_:77,
number_:1,
}
a = temp
a.name()
}
内嵌
内嵌即结构体中可以声明没有字段名的字段。
type student struct{
name
score int32
}
其中同一类型的字段只能这么声明一次。
可以内嵌结构体,内嵌结构体的字段可以直接使用。