91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用Go來模擬Java中的接口 實現類

發布時間:2020-08-31 22:45:01 來源:網絡 閱讀:688 作者:故新 欄目:編程語言

針對項目中,相同的流程業務進行重構,使用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")

}
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宁晋县| 叶城县| 安西县| 咸丰县| 曲阳县| 五常市| 永川市| 荥经县| 普定县| 定日县| 靖远县| 方正县| 兴隆县| 疏勒县| 涪陵区| 镶黄旗| 酒泉市| 平度市| 土默特左旗| 永宁县| 邵东县| 林西县| 老河口市| 故城县| 罗田县| 容城县| 静安区| 清涧县| 敖汉旗| 大丰市| 霍林郭勒市| 隆回县| 苍梧县| 丽江市| 惠来县| 浪卡子县| 武定县| 茂名市| 巢湖市| 虹口区| 陈巴尔虎旗|