go语言的继承 和接口 初次学习有点不适应
LitteMonkey 继承了Monkey的属性(字段)和方法;
- go语言的类实现方法 全部是通过struct 实现
type Monkey struct{
Name string //字段
}
//结构体的方法是需要绑定的
func (monkey *Monkey)Climbing(){
//方法名前(monkey *Monkey)表示该方法绑定到 Monkey结构体上
}
- 继承的实现
type LitteMonkey struct{
Monkey //表示 LitteMonkey继承了Monkey的所有方法和字段
}
- 接口的实现:先定义接口,然后将接口方法直接绑定到结构体上
// 1.0 定义接口
type FishAble interface{
Swimming()
}
//2.0绑定接口方法 (有个疑问,如果很多接口都有一个方法,是不是就是说,实现了所有接口的方法呢?这么高效吗?)
func (this *LitteMonkey) Swimming(){
fmt.Println(this.Name,"学会了游泳。")
}
//
4.调用
monkey:=LitteMonkey{
Monkey{
Name