结构体继承

结构体模拟实现其他语言中的“继承”

package main

import "fmt"

type animal struct {
  name string
}

func (a animal) move() {
  fmt.Printf("%v 会动\n", a.name)
}

type dog struct {
  color  string
  animal //此处animal有的方法dog都有了
}

func (d dog) wang() {
  fmt.Printf("%v 在汪汪汪", d.name)
}

func main() {
  d1 := dog{
    color:  "白色",
    animal: animal{name: "张三"},
  }
  d1.move()
  d1.wang()
}

posted @ 2023-02-08 21:03  suknna  阅读(20)  评论(0)    收藏  举报