Go语言如何实现多态
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇"Go语言如何实现多态 "文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"Go语言如
千家信息网最后更新 2026年10月31日Go语言如何实现多态
这篇"Go语言如何实现多态 "文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"Go语言如何实现多态 "文章吧。
多态是什么
相信学过Java这种面向对象语言的同学对于多态来说都不陌生,在代码执行的时候,能够根据子类的类型去执行子类当中的方法。多态是指代码可以根据类型的具体实现采取不同行为的能力。如果一个类型实现了某个接口,所有使用这个接口的地方,都可以支持这种类型的值。
Go语言多态举例
有这样一个场景,我们在应用开发中涉及到很多通知事件,通知的类型可以是通过微信、QQ、Email等,那么我们可以抽象出一个接口,定义一个通知的接口,然后微信通知类、QQ通知类、Email通知类分别实现对应的通知方法。
定义一个通知类型:notifier
// 通知者接口type Notifier interface { // 通知方法,可以由具体的类进行实现 notify()}定义微信类型、QQ类型、Email类型,并实现notify方法,以指针类型作为方法的接收者
type WechatNotifier struct { Name string Message string}func (w *WechatNotifier) notify() { fmt.Printf("%v notify %v \n", w.Name, w.Message)}type QQNotifier struct { Name string Message string}func (q *QQNotifier) notify() { fmt.Printf("%v notify %v \n", q.Name, q.Message)}type EmailNotifier struct { Name string Message string}func (e *EmailNotifier) notify() { fmt.Printf("%v notify %v \n", e.Name, e.Message)}定义发送通知方法,入参为Notifier;等需要调用的时候,需要传入实现了Notifier中的接口的类型
func sendNotify(notifier Notifier) { notifier.notify()}测试一下
func main() { w := &WechatNotifier{ Name: "微信", Message: "微信消息", } q := &QQNotifier{ Name: "QQ", Message: "QQ消息", } e := &EmailNotifier{ Name: "Email", Message: "Email消息", } // 接受微信类型 sendNotify(w) // 接受QQ类型 sendNotify(q) // 接受Email类型 sendNotify(e)}测试结果如下:
以上就是关于"Go语言如何实现多态 "这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。
类型
多态
接口
方法
语言
内容
消息
代码
子类
文章
时候
知识
篇文章
测试
不同
陌生
事件
价值
同学
地方
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
精品咖啡豆
互联网科技股
互联网科技深圳
互联网科技战争
港股互联网科技股
华中科技大学互联网
互联网科技公司做什么
现代互联网科技股
互联网校园科技培训
互联网经济与金融科技
青岛科技大学互联网大赛研究生
深圳市优智互联网科技有限公司
洛阳共同富裕互联网科技有限公司
群盈汇互联网科技有限公司
锡山区互联网智能科技产品供应
互联网科技快讯热点
2021世界互联网领先科技成果发布
信承诺互联网科技有限公司
互联网科技手抄报图片
利用互联网等科技手段
疫情对互联网科技公司影响
互联网科技垄断
互联网科技金融
互联网金融与金融科技
深圳艾佳互联网科技
科技互联网海报
广州互联网高科技取餐柜
福州德业互联网科技
东风日产互联网科技公司叫什么
颐高云石互联网科技