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)
	

}
相关推荐
buhuizhiyuci4 小时前
【python篇——一周速通python语法】python的条件语句和循环语句
开发语言·python
geovindu4 小时前
go: Recursion Algorithm
开发语言·后端·算法·golang·递归算法
geovindu4 小时前
CSharp: Composite Pattern
开发语言·后端·c#·组合模式·结构型模式
消失的旧时光-19434 小时前
KMP Web 开发实战(二):js、wasmJs、browser、executable 到底是什么意思?
开发语言·前端·javascript·跨平台·kmp
sycmancia4 小时前
Qt——线程的生命期问题
开发语言·qt
影寂ldy4 小时前
C# 多线程进阶知识点(线程优先级、多委托传参、线程锁、死锁)
开发语言·数据库·c#
国服第二切图仔5 小时前
09-搜索工具Grep与Glob
开发语言·javascript·ecmascript
凤山老林5 小时前
从“无法创建本地线程“异常说起:深度解析线程栈与JVM线程优化指南
java·开发语言·jvm
库克克5 小时前
【C++】多态
开发语言·c++
观远数据5 小时前
经营闭环的最后一公里:从看见问题到解决问题之间还差什么
java·开发语言·数据库