Go 多态功能实现
来源:互联网 发布:手机淘宝能加好友吗 编辑:程序博客网 时间:2024/06/01 10:42
Go 多态功能实现
Go本身不具有多态的特性,不能够像Java、C++那样编写多态类、多态方法。但是,使用Go可以编写具有多态功能的类绑定的方法。为什么这么说呢?因为Go使用struct构建类,根据不同类调用不同的方法。下面将展示如何使用Go编写多态功能。
package mainimport ( "fmt")type strCase struct{}type intCase struct{}func (text strCase) Add(x string, y string) string { return x + y}func (number intCase) Add(x int, y int) int { return x + y}func StartPolymorphism() { number := new(intCase) fmt.Print(" intCase Add: ", number.Add(1, 3), "\n") text := new(strCase) fmt.Print("strCase Add: ", text.Add("Add A", "Add B"), "\n")}func main(){ StartPolymorphism()}
输出结果:
intCase Add: 4strCase Add: Add AAdd B
使用struct对象类型来消除了方法的模糊性。Go没法像Java语言那样直接写 泛型类或者泛型方法。Go具有它独有的语言特性,主要是为实现高并发而生。
欢迎加入我的微信公众号
1 0
- Go 多态功能实现
- go语言如何实现类似c++中的多态功能
- GO实现简单的web服务功能
- go语言实现的GM邮件功能:全服邮件和多人邮件的发送
- Silverlight 4 导航应用程序实现javacript history.go(-1)功能
- go语言的IDE实现自动补全的功能
- Go实现Web后端基础功能(附源码)
- go语言beego框架 orm实现insertOrUpdate功能
- 面向对象思考及go实现继承与多态
- 【Go web开发之revel+mgo】第4章 实现评论功能
- 【Go web开发之revel+mgo】第6章 实现留言板功能
- 使用GO语言实现的日志集中查看的小功能.
- Visual Studio Code-GO tasks 设置 (实现在vsc下直接编译输出的功能)
- go.js的一些功能
- 睡眠排序--go实现
- go实现留言本
- go内部实现
- go channel实现
- javascript的一些坑
- C++面试题4
- memset函数赋值问题
- vc_各类型数据最大值
- 类和对象的使用
- Go 多态功能实现
- C++面试题5
- jquery的animate的使用
- 杭电acm2007
- hive中的排序
- 前端面试题大集合
- CCF认证 送货
- 标准库类型vector
- php第三方登录 Oauth2.0协议