文章目录

概要整体架构流程技术名词解释技术细节小结

 博主猫头虎的技术世界 

  欢迎来到猫头虎的博客  — 探索技术的无限可能!

专栏链接:  精选专栏: - [《面试题大全》](https://blog.csdn.net/qq_44866828/category_11204494.html) — 面试准备的宝典! - [《IDEA开发秘籍》](https://blog.csdn.net/qq_44866828/category_10895109.html) — 提升你的IDEA技能! - [《100天精通Golang》](https://blog.csdn.net/qq_44866828/category_12339137.html) — Go语言学习之旅!

领域矩阵:  猫头虎技术领域矩阵:

深入探索各技术领域,发现知识的交汇点。了解更多,请访问: - [猫头虎技术矩阵](https://bbs.csdn.net/topics/617720781) - [新矩阵备用链接](https://bbs.csdn.net/topics/617717169)  

 

 Go 语言接口

Go 语言提供了另外一种数据类型即接口,它把所有的具有共性的方法定义在一起,任何其他类型只要实现了这些方法就是实现了这个接口。

实例

实例

/* 定义接口 */ type interface_name interface { method_name1 [return_type] method_name2 [return_type] method_name3 [return_type] ... method_namen [return_type] }

/* 定义结构体 */ type struct_name struct { /* variables */ }

/* 实现接口方法 */ func (struct_name_variable struct_name) method_name1() [return_type] { /* 方法实现 */ } ... func (struct_name_variable struct_name) method_namen() [return_type] { /* 方法实现*/ }

实例

实例

package main

import ( "fmt" )

type Phone interface { call() }

type NokiaPhone struct { }

func (nokiaPhone NokiaPhone) call() { fmt.Println("I am Nokia, I can call you!") }

type IPhone struct { }

func (iPhone IPhone) call() { fmt.Println("I am iPhone, I can call you!") }

func main() { var phone Phone

phone = new(NokiaPhone) phone.call()

phone = new(IPhone) phone.call()

}

在上面的例子中,我们定义了一个接口Phone,接口里面有一个方法call()。然后我们在main函数里面定义了一个Phone类型变量,并分别为之赋值为NokiaPhone和IPhone。然后调用call()方法,输出结果如下:

I am Nokia, I can call you!

I am iPhone, I can call you!

原创声明  - [ ] 原创作者: 猫头虎

 - [ ] 作者wx:   Libin9iOak  

 - [ ] 作者公众号:   猫头虎技术团队  

学习复习✔✔

  

---

本文为原创文章,版权归作者所有。未经许可,禁止转载、复制或引用。

作者保证信息真实可靠,但不对准确性和完整性承担责任。

未经许可,禁止商业用途。

如有疑问或建议,请联系作者。

感谢您的支持与尊重。

>点击`下方名片`,加入IT技术核心学习团队。一起探索科技的未来,洞察Go生态,共同成长。

精彩链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: