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)
	

}
相关推荐
波力海苔夹心脆6751 分钟前
C# 值类型与引用类型详解:存储位置、赋值机制、参数传递、相等比较、装箱拆箱与常见陷阱
开发语言·jvm·经验分享·笔记·c#·.net
m0_3807438710 分钟前
Qt中导航栏实现的详细指南
开发语言·c++
mhmh12316 分钟前
Python 对象模型与数据模型:魔术方法、描述符与元类深度解析
开发语言·python
估值探索者21 分钟前
【Python量化策略实战 #02】多因子合成mom和vol两因子打分合成
开发语言·c++·python·数据挖掘·c#
m0_380743871 小时前
PHP7.3和7.2字符串功能有什么不同
开发语言·php
m0_380743872 小时前
PHP 8.4的新语法怎么用才规范
开发语言·php
阿狗童鞋2 小时前
Java并发编程实战指南
java·开发语言
phltxy2 小时前
C 语言自定义类型:结构体、位段、枚举与联合体
c语言·开发语言
Sarvartha3 小时前
对象创建与引用
java·开发语言
hasty3 小时前
限制写了却没生效:OpenTelemetry Go 的 Unicode 截断边界
开发语言·后端·golang