站長資訊網
        最全最豐富的資訊網站

        golang支持同名方法嗎

        golang支持同名方法。Go語言中允許在同一包中創建兩個或多個具有相同名稱的方法,但是這些方法的接收者必須具有不同的類型;注該功能在Go函數中不可用,這意味著不允許用戶在同一包中創建相同名稱的方法,如果嘗試這樣做,則編譯器將拋出錯誤。

        golang支持同名方法嗎

        php入門到就業線上直播課:進入學習
        Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調試工具:點擊使用

        本教程操作環境:windows7系統、GO 1.18版本、Dell G3電腦。

        Go 同名方法

        在Go語言中,允許在同一包中創建兩個或多個具有相同名稱的方法,但是這些方法的接收者必須具有不同的類型。該功能在Go函數中不可用,這意味著不允許您在同一包中創建相同名稱的方法,如果嘗試這樣做,則編譯器將拋出錯誤。

        語法:

        func(reciver_name_1 Type) method_name(parameter_list)(return_type){     // Code } func(reciver_name_2 Type) method_name(parameter_list)(return_type){     // Code }
        登錄后復制

        讓我們借助示例來討論這個概念:

        范例1:

        package main     import "fmt"    //創建結構體 type student struct {      name   string      branch string  }     type teacher struct {      language string      marks    int }     //名稱相同的方法,但有不同類型的接收器 func (s student) show() {         fmt.Println("學生姓名:", s.name)      fmt.Println("Branch: ", s.branch)  }     func (t teacher) show() {         fmt.Println("Language:", t.language)      fmt.Println("Student Marks: ", t.marks)  }     func main() {         // 初始化結構體的值     val1 := student{"Rohit", "EEE"}         val2 := teacher{"Java", 50}         //調用方法     val1.show()      val2.show()  }
        登錄后復制

        輸出:

        golang支持同名方法嗎

        用法說明:在上面的示例中,我們有兩個相同的名稱方法,即show(),但接收器的類型不同。這里,第一個show()方法包含s student類型的接收者,第二個show()方法包含t teacher類型的接收者。在main()函數中,我們借助各自的結構體變量來調用這兩種方法。如果嘗試使用相同類型的接收器創建此show()方法,則編譯器將拋出錯誤。

        范例2:

        //創建相同名稱的方法 //非結構類型的接收器 package main     import "fmt"    type value_1 string  type value_2 int    //創建具有相同名稱的函數 //不同類型的非結構接收器 func (a value_1) display() value_1 {         return a + ".com" }     func (p value_2) display() value_2 {         return p + 298  }     func main() {         //初始化值      res1 := value_1("nhooo")      res2 := value_2(234)         // 打印顯示結果     fmt.Println("Result 1: ", res1.display())      fmt.Println("Result 2: ", res2.display())  }
        登錄后復制

        輸出:

        golang支持同名方法嗎

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 久久91这里精品国产2020| 亚洲国产精品无码久久久秋霞2| 久久精品亚洲福利| 欧美日韩精品| 久久久精品免费国产四虎| 四虎成人精品永久免费AV| 国产精品人人做人人爽人人添| 精品一区二区久久久久久久网站| 日本Aⅴ大伊香蕉精品视频| 99久久www免费人成精品| 成人区人妻精品一区二区不卡视频 | 亚洲日韩精品A∨片无码| 国产精品高清在线观看| 久久亚洲国产欧洲精品一| 92国产精品午夜福利| 精品黑人一区二区三区| 无码精品久久久天天影视| 人妻一区二区三区无码精品一区| 国产区精品福利在线观看精品| 久久精品国产免费| 精品久久一区二区| 国产福利91精品一区二区| 992tv精品视频tv在线观看| 精品久久人妻av中文字幕| 精品国精品无码自拍自在线| 无码精品国产一区二区三区免费 | 国产精品成人久久久久久久| 精品亚洲综合在线第一区| 国产精品亚洲精品观看不卡| 国产精品熟女高潮视频| 精品人妻久久久久久888| 免费精品一区二区三区第35| 国产成人精品久久一区二区三区| 国产精品兄妹在线观看麻豆| 国产精品伦一区二区三级视频 | 久久精品国产福利国产琪琪 | 亚洲第一精品在线视频| 久久综合九色综合精品| 欧美亚洲国产成人精品| 亚洲无删减国产精品一区| 99九九精品免费视频观看|