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

        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號
        主站蜘蛛池模板: 久久精品国产亚洲AV不卡| 久久久精品人妻一区二区三区蜜桃| 亚洲国产精品成人久久蜜臀 | 51午夜精品免费视频| 伊在人亚洲香蕉精品区麻豆| 国产精品福利电影一区二区三区四区欧美白嫩精品 | 日产国产精品亚洲系列| 97国产视频精品| 国产精品久久永久免费| 久久久久无码精品国产不卡| 日韩欧美一区二区三区中文精品| 国产精品国产三级在线高清观看| 热99re久久国超精品首页| 99久久精品毛片免费播放| 精品欧洲av无码一区二区三区| 中文字幕在线亚洲精品| 日韩精品成人亚洲专区| 精品人妻少妇嫩草AV无码专区| 99久久精品免费国产大片| 久久国产免费观看精品| 国产精品一久久香蕉产线看| 国产精品乱码高清在线观看| 精品无码一区二区三区亚洲桃色| 亚洲国产精品久久久天堂| 真实国产乱子伦精品视频| 亚洲A∨午夜成人片精品网站| 国内精品视频在线观看| 国产精品自在欧美一区| 国产精品户外野外| 国产精品狼人久久久久影院| 91精品成人免费国产片| 91探花国产综合在线精品| 成人精品一区二区久久久| 99久久国产综合精品五月天喷水 | 国产福利电影一区二区三区,欧美国产成人精品一 | 全国精品一区二区在线观看| 欧美日韩精品系列一区二区三区国产一区二区精品 | 久久精品人人做人人妻人人玩| 综合在线视频精品专区| 久久精品中文闷骚内射| AAA级久久久精品无码片|