Golang 同名方法
在Go语言中,允许在同一个包中创建两个或多个同名的方法,但这些方法的接收者必须是不同的类型。这个特性在Go函数中是不存在的,这意味着你不允许在同一个包中创建同名方法,如果你试图这样做,那么编译器会抛出一个错误。
语法
让我们借助于例子来讨论这个概念。
例1 :
输出
解释: 在上面的例子中,我们有两个同名的方法,即show(),但有不同类型的接收者。第一个show()方法包含s接收器,属于学生类型;第二个show()方法包含t接收器,属于教师类型。在main()函数中,我们在各自结构变量的帮助下调用这两个方法。如果你试图用相同类型的接收器创建这个show()方法,那么编译器会抛出一个错误。
例2 :
输出