内容简介:在go语言中,一个类只要实现了接口要求的所有函数,我们就说这个类实现了这个接口。golang接口赋值实现方式一:将对象实例赋值给接口golang接口赋值实现方式二:将接口赋值给接口
在 go 语言中,一个类只要实现了接口要求的所有函数,我们就说这个类实现了这个接口。
golang接口赋值实现方式一:将对象实例赋值给接口
package main import "fmt" //定义一个Animal接口,实现飞和跑的功能 type Animal interface { Fly() Run() } //定义一个Bird类 type Bird struct { } //通过类实现接口的函数功能 func (bird Bird) Fly() { fmt.Println("the bird is flying!!!") } func (bird Bird) Run() { fmt.Println("the bird is running!!!") } func main() { // 声明一个Animal接口类型的变量 var animal Animal //声明一个Bird类型的变量,并将其置0 //new()函数是一个用来分配内存的内建函数,它不初始化内存,只将其置0。 bird := new(Bird) //把bird对象赋值给animal接口 animal = bird //调用接口中的函数功能 animal.Fly() animal.Run() }
golang接口赋值实现方式二:将接口赋值给接口
package main import "fmt" //定义一个Animal接口,实现飞和跑的功能 type Animal interface { Fly() Run() } type Animal2 interface { Fly() } //定义一个Bird类 type Bird struct { } //通过类实现接口的函数功能 func (bird Bird) Fly() { fmt.Println("the bird is flying!!!") } func (bird Bird) Run() { fmt.Println("the bird is running!!!") } func main() { // 声明一个Animal接口类型的变量 var animal Animal var animal2 Animal2 //声明一个Bird类型的变量,并将其置0 //new()函数是一个用来分配内存的内建函数,它不初始化内存,只将其置0。 bird := new(Bird) //把bird对象赋值给animal接口 animal = bird //将animal接口赋值给animal2,注意函数功能包含关系,包含方法多的接口可以赋值给方法少的接口,反之,则不行。 animal2 = animal //调用接口中的函数功能 animal.Fly() animal.Run() animal2.Fly() }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- [Vue 2.x Todo 教程练习参考答案] 标为完成练习参考答案
- [Vue 2.x Todo 教程练习参考答案] 添加todo练习参考答案
- [Vue 2.x Todo 教程练习参考答案] 入门仪式_Hello_Vue练习参考答案
- python二级练习(4)
- python二级练习(6)
- python二级练习(7)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
JSP & Servlet学习笔记
【台湾】林信良 / 清华大学出版社 / 2012-5 / 58.00元
本书是作者多年来教学实践经验的总结,汇集了教学过程中学生在学习JSP & Servlet时遇到的概念、操作、应用或认证考试等问题及解决方案。 本书针对Servlet 3.0的新功能全面改版,无论是章节架构与范例程序代码,都做了全面更新。书中详细介绍了Servlet/ JSP与Web容器之间的关系,必要时从Tomcat源代码分析,了解Servlet/ JSP如何与容器互动。本书还涵盖了文本处理......一起来看看 《JSP & Servlet学习笔记》 这本书的介绍吧!