继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

使用Go来模拟Java中的接口 实现类

安卓软件程序开发入门学习
关注TA
已关注
手记 289
粉丝 49
获赞 282

针对项目中,相同的流程业务进行重构,使用Go来简单模拟Java中的接口,实现类的方式进行重构。
分享一简单例子:

package main//模拟java中的接口,实现类import "fmt"// 声明一个接口,type workthread interface {    do(name string)}// 传入的wt的子类不同,do方法执行的逻辑也不同func Handle(wt workthread, name string) {    fmt.Println("--------执行do方法前的逻辑------")    wt.do(name)    fmt.Println("--------执行do方法后的逻辑------")}type SparkNode struct {    ClusterName string}func (sn *SparkNode) do(name string) {    fmt.Println("----hello, I'm spark node", "\t", sn.ClusterName)}func (sn *KafkaNode) do(name string) {    fmt.Println("----hello, I'm kafka node\t", sn.ClusterName)}type KafkaNode struct {    ClusterName string}func main() {    sparkNode := &SparkNode{        ClusterName: "k8s",    }    kafkaNode := &KafkaNode{        ClusterName: "kafka-node",    }    Handle(sparkNode, "111")    Handle(kafkaNode, "222")}

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP