Go语言之组合(十九)
2023-06-13 09:12:23 时间
Go语言之组合(十九)
面向对象特性:继承
组合实现
目录结构
├── demo
│ └── demo.go
├── go.mod
└── main.go
demo.go文件
package demo
import "fmt"
type Animal struct {
Colour string
}
type Dog struct {//dog 结构体包含了Animal结构体的属性和方法
Animal //组合
ID int
Name string
Age int
}
func (d *Dog)Run() {
fmt.Println("ID:",d.ID,"DOG is running")
}
func (a *Animal)Eat() {
fmt.Println("yu yu yu yu")
}
main.go文件
package main
import (
"./demo"
"fmt"
)
func main() {
dog := new(demo.Dog)
dog.ID = 1
dog.Name = "GG"
dog.Age = 5
dog.Colour = "red" //继承了Animal的属性
dog.Eat() //继承了Animal的方法 yu yu yu yu
fmt.Println("\r")
fmt.Println(dog) //&{{red} 1 GG 5}
}
相关文章
- 10.Go语言-包
- 2022-09-10:以下go语言代码输出什么?A:编译错误;B:49.0;C:49。 package main import ( “fmt“ ) func m
- 急如闪电快如风,彩虹女神跃长空,Go语言高性能Web框架Iris项目实战-初始化项目ep00
- Go语言中常见100问题-#20 Not understanding slice length and capacity
- Go语言内网资产探测工具
- Go语言——方法
- 哪些项目使用Go语言开发?
- Go语言sync.Map(在并发环境中使用的map)
- Go语言类型断言简述
- Go语言自定义包
- go pprof命令(Go语言性能分析命令)完全攻略
- Go语言组合和方法集
- 精通Go语言开发Redis应用(go语言redis开发)
- 安装Go语言快速安装:Linux系统Go Get命令(linuxgoget)
- 简易教程:如何在 Linux 上安装 GO 语言(go语言安装linux)
- MySQL中使用Go语言的好处(mysql中go什么)
- 用Go语言深入Redis缓存技术(用go写redis)
- ODBC数据驱动程序连接Oracle数据库Go语言之旅(go使用oracle)