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

        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號
        主站蜘蛛池模板: 亚洲人精品午夜射精日韩 | 久久国产精品偷99| 无码人妻精品一区二区三区夜夜嗨 | 无码人妻精品一区二区三区久久 | 久久久久人妻精品一区 | 精品97国产免费人成视频| 99精品免费视品| 亚洲精品白浆高清久久久久久| 国内精品伊人久久久久网站| 久久精品国产一区| 国产成人无码久久久精品一| 一本之道av不卡精品| 久久久不卡国产精品一区二区| 99久久亚洲综合精品网站| 国产精品久久久久久久久鸭| 久久精品蜜芽亚洲国产AV| 一本一道精品欧美中文字幕| 午夜精品久久久久9999高清| 国产在线观看高清精品| 国产成人精品一区二区三区| 精品久久777| 久久91精品久久91综合| 99re这里只有精品6| 国产在线精品一区二区中文| 日韩精品乱码AV一区二区| 亚洲精品字幕在线观看| 亚洲精品视频在线观看你懂的| 久99久无码精品视频免费播放| 国产精品成人无码久久久久久 | 精品欧美| 欧美成人精品一区二区综合| 精品福利一区二区三区| 久久精品国产精品亜洲毛片| 久久精品无码专区免费| 久久亚洲精品无码播放| 欧美久久亚洲精品| 亚洲电影日韩精品 | 色婷婷噜噜久久国产精品12p| 欧美午夜精品一区二区三区91| 久久精品国产亚洲Aⅴ香蕉| 男女男精品网站免费观看|