[Go] 利用函数类型实现封装中的回调
2023-02-18 15:41:24 时间
当进行业务逻辑开发的时候,经常要进行封装,封装成独立的类文件,在类文件的属性中预留出函数类型的API
在调用该类文件中某些方法的时候,也根据业务需要调用类属性中的函数,
在主业务中可以传递特定的函数注册到属性中,也会被调用到
test.php
package main import "log" func main() { c := NewConn(callback, callback2) c.Start() } //在当前模块定义的回调函数 func callback() { log.Println("i am callback") } func callback2(name string) string { log.Println("i am callback2 ", name) return "hello" }
connection.go是封装的类文件,回调类主模块中的函数
package main type Connection struct{ handleFunc func() handleFunc2 func(name string)string } //把被回调函数注册进了封装类的属性中 func NewConn(callback func(),callback2 func(name string)string) *Connection{ c:=&Connection{ handleFunc: callback, handleFunc2: callback2, } return c } //在进行某些业务时也把回调函数执行了 func (c *Connection)Start(){ c.handleFunc() c.handleFunc2("taoshihan") }
相关文章
- 无法下载 http://dl.google.com/linux/chrome/deb/dists/stable/main/binary-amd64/Packages
- git提交报错does not match your user account
- 导出简书的文章生成gitbook上传到github通过xxx.github.io访问
- Git reset 之后 怎么恢复到 reset 之前的节点
- 准大三学生给想学习C++同学的学习路线
- 5000字用C++带你入门马氏链。
- Strimzi Kafka Bridge(桥接)实战之三:自制sdk(golang版本)
- MongoDB从入门到实战之MongoDB简介
- vitepress+gitee pages搭建自己的博客网站
- git clone 拉取远程仓库
- mac 系统 homebrew 管理 PHP
- PHP 冒泡排序算法
- git tag 命令详解
- PHP 中的魔术方法
- PHP 拼手气红包分配算法
- git rm 从暂存区中删除内容
- git checkout 命令详解
- git add 命令详解
- git status 查看仓库文件状态
- git commit 命令详解