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)
	

}
相关推荐
维吉斯蔡4 小时前
【VS Code / Cursor】文件夹右键快捷打开与文件类型自动关联
开发语言·程序人生·学习方法
luj_17686 小时前
星火科技助力边远地区防病攻坚
c语言·开发语言·c++·经验分享·算法
always_TT6 小时前
【Python 日志记录:logging 模块入门】
开发语言·python·php
xcLeigh6 小时前
Go入门:变量声明的五种方式详解
java·开发语言·golang
zmzb01037 小时前
C++课后习题训练记录Day175
开发语言·c++
脱胎换骨-军哥7 小时前
C++ 代码规范与格式化指南
开发语言·c++·代码规范
枕星而眠8 小时前
C++ STL Map容器完全指南:从有序红黑树到无序哈希表
java·开发语言
爱吃牛肉的大老虎9 小时前
Rust对象之结构体,枚举,特性
开发语言·后端·rust
bbq粉刷匠9 小时前
HashMap 底层原理深度拆解(二):putVal 完整链路解析(懒加载 · 链表遍历 · 尾插法)
java·开发语言·哈希算法
@三十一Y9 小时前
C++:红黑树的实现
开发语言·c++