掌握Go语言:Go语言类型转换,无缝处理数据类型、接口和自定义类型的转换细节解析(29)
package main
import (
"fmt"
)
// 定义一个简单的接口
type SimpleInterface interface {
SimpleMethod() string
}
// 定义一个自定义类型
type CustomType struct {
value string
}
// 实现SimpleInterface接口
func (c CustomType) SimpleMethod() string {
return c.value
}
func main() {
// 自定义类型到接口的转换
customTypeValue := CustomType{"转换示例"}
var simpleInterface SimpleInterface
// 自定义类型到接口的隐式转换
simpleInterface = customTypeValue // 直接赋值,无需显式转换
// 输出转换结果
fmt.Println(simpleInterface.SimpleMethod()) // 输出: 转换示例
}
这段代码定义了一个简单的接口SimpleInterface
和一个自定义类型CustomType
,它实现了SimpleInterface
接口。在main
函数中,我们创建了一个CustomType
类型的实例,并将其赋值给一个SimpleInterface
类型的变量,这就是隐式类型转换的例子。程序输出了转换后的结果,验证了隐式转换的有效性。
评论已关闭