go语言接口设计三国人物

题目

请设计一个接口Person,然后设计两个结构体实现Person接口,这两个结构体都代表三国时代的名人。Person接口中有一个方法,该方法输出一句最能代表该人物特点的话。

程序

go 复制代码
package main
import (
	"fmt"
	
)
type Person interface {
    say()
    
}
type CaoCao struct {
    
}

func (person CaoCao) say() {
    fmt.Println("曹操:宁教我负天下人,休教天下人负我!")
}
type XuSheng struct {
}

func (person XuSheng) say() {
    fmt.Println("徐盛:犯大吴疆土者,盛必击而破之!")
}
/*参数是接口的实例*/
func chuiNiu(p Person){
	p.say()
}
func main(){
	c := CaoCao{}
	chuiNiu(c)

	x := XuSheng{}
	chuiNiu(x)
	

}
相关推荐
江畔柳前堤7 小时前
roLabelImg 详细安装教程
开发语言·人工智能·后端·云原生
Wang's Blog8 小时前
Go-Zero 项目开发47:自研微服务框架的必要性与核心结构设计
开发语言·微服务·golang
白鸽(二般)8 小时前
MinIO Java Client API
java·开发语言
hPw0eKIqD8 小时前
C++ 模板参数推导问题小记(非推导上下文)
开发语言·c++
临床数据科学和人工智能兴趣组9 小时前
要使用 R Markdown,首先需要安装 R 和 RStudio,接着安装 rmarkdown 包
开发语言·数据挖掘·数据分析·r语言·r语言-4.2.1
Nebula嵌入式9 小时前
【C语言】09-深入解析main函数
linux·c语言·开发语言·嵌入式
神罚天下ET11 小时前
c# ACME client (补充)
开发语言·c#
小灰灰搞电子11 小时前
Qt 实现魔法导航菜单源码分享
开发语言·qt
持敬chijing11 小时前
Python概述
开发语言·python
lpfasd12313 小时前
编程语言榜单变迁分析
开发语言·后端·scala