golang支援同名方法。 Go語言中允許在同一套件中建立兩個或多個具有相同名稱的方法,但是這些方法的接收者必須具有不同的類型;注意該功能在Go函數中不可用,這意味著不允許使用者在同一在套件中建立相同名稱的方法,如果嘗試這樣做,則編譯器將拋出錯誤。
本教學操作環境: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() }
輸出:
用法說明:在上面的範例中,我們有兩個相同的名稱方法,也就是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支援同名方法嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

go语言有缩进。在go语言中,缩进直接使用gofmt工具格式化即可(gofmt使用tab进行缩进);gofmt工具会以标准样式的缩进和垂直对齐方式对源代码进行格式化,甚至必要情况下注释也会重新格式化。

本篇文章带大家了解一下golang 的几种常用的基本数据类型,如整型,浮点型,字符,字符串,布尔型等,并介绍了一些常用的类型转换操作。

go语言叫go的原因:想表达这门语言的运行速度、开发速度、学习速度(develop)都像gopher一样快。gopher是一种生活在加拿大的小动物,go的吉祥物就是这个小动物,它的中文名叫做囊地鼠,它们最大的特点就是挖洞速度特别快,当然可能不止是挖洞啦。

是,TiDB采用go语言编写。TiDB是一个分布式NewSQL数据库;它支持水平弹性扩展、ACID事务、标准SQL、MySQL语法和MySQL协议,具有数据强一致的高可用特性。TiDB架构中的PD储存了集群的元信息,如key在哪个TiKV节点;PD还负责集群的负载均衡以及数据分片等。PD通过内嵌etcd来支持数据分布和容错;PD采用go语言编写。

在写 Go 的过程中经常对比这两种语言的特性,踩了不少坑,也发现了不少有意思的地方,下面本篇就来聊聊 Go 自带的 HttpClient 的超时机制,希望对大家有所帮助。

go语言需要编译。Go语言是编译型的静态语言,是一门需要编译才能运行的编程语言,也就说Go语言程序在运行之前需要通过编译器生成二进制机器码(二进制的可执行文件),随后二进制文件才能在目标机器上运行。

发现 Go 不仅允许我们创建更大的应用程序,并且能够将性能提高多达 40 倍。 有了它,我们能够扩展使用 PHP 编写的现有产品,并通过结合两种语言的优势来改进它们。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

Dreamweaver Mac版
視覺化網頁開發工具