golang中接口类型小案例
2024-08-30 13:36:40
1. 在项目中实现注册成功之后,向用户发送邮件、微信提醒
package main import "fmt" type IMessage interface {
send() bool
} type Email struct {
email string
content string
}
func (e *Email) send() bool {
fmt.Println("发送邮件提醒:", e.email, e.content)
return true
} type Wechat struct {
wid int
content string
}
func (w *Wechat) send() bool {
fmt.Println("发送微信提醒:", w.wid, w.content)
return true
} func DoSomething(messageSlice []IMessage) {
for _, item := range messageSlice {
ret := item.send()
fmt.Println(ret)
}
} func main() {
// 在项目中实现注册成功之后,向用户发送邮件、微信提醒
messageSlice := []IMessage{
&Email{email: "1341935532@qq.com", content: "邮件提醒"},
&Wechat{wid: 110, content: "微信提醒"},
}
DoSomething(messageSlice)
}
最新文章
- 【HEVC】4、HM-16.7编码一个CU(帧内部分) 3.帧内预测各种模式实现
- 在ASP.NET 5中如何方便的添加前端库
- Android 结合实例学会AsyncTask的用法
- grails-shiro权限认证
- GitHub详细教程(转载)
- 南阳理工ACM Skiing问题
- zz 李治国:地图大战本质是争抢O2O入口
- JAVA web选型
- WordPress wp-admin/includes/post.php脚本安全漏洞
- 读取一个文件,将其Base64编码,每76个字符加一个换行(转)
- Spark link集合
- jq跨域获取json
- Java采用JDBC的方式连接Hive(SparkSQL)
- 中文命名之Hibernate+MySQL演示
- 某喷码机品牌U盘存储的配置文件简记
- bootstrap datetimepicker
- HDU 1590 Searching(求复数向量和的极限)
- package结构
- html中一些莫名的空格
- 第四章 JVM垃圾回收算法