go 并发编程案例三 golang 中的面向对象

Golang 中的面向对象

  • struct 类型
  • interface
  • 封装、继承、多态
    1. 封装
      type Foo struct {
      baz string
      }

func (f *Foo) echo() {
fmt.Println(f.baz)
}
func main() {
f := Foo{baz: "hello,struct"}
f.echo()
}

  1. 多态
    type Foo interface {
    qux()
    }

type Baz struct {
}

type Bar struct {
}

func (a *Bar) qux() {

}

func (b *Baz) qux() {

}

func main() {
var f Foo
f = &Bar{}
f = &Baz{}

fmt.Println(f)
}
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!