day2加餐 Go 接口型函数的使用场景
package main
import (
"fmt"
)
// 定义一个接口,包含一个方法
type Printer interface {
Print()
}
// 实现Printer接口的具体类型
type StringPrinter struct {
value string
}
// StringPrinter类型实现了Printer接口的Print方法
func (sp StringPrinter) Print() {
fmt.Println(sp.value)
}
// 使用接口型函数
func printWithInterface(p Printer) {
p.Print()
}
func main() {
// 创建StringPrinter实例
printer := StringPrinter{value: "Hello, World!"}
// 调用接口型函数
printWithInterface(printer)
}
这段代码定义了一个Printer
接口和一个实现了该接口的StringPrinter
结构体。printWithInterface
函数接受一个Printer
类型的参数,并调用其Print
方法。在main
函数中,我们创建了一个StringPrinter
实例,并将其传递给printWithInterface
函数,从而展示了接口型函数的使用场景。
评论已关闭