
如何在 Golang 函数中调用接口
在 Golang 中,接口是一种数据类型,它定义了一组方法。我们可以使用接口来实现多态性,即让一个函数可以接受不同类型但实现相同接口的对象。调用接口中的函数与调用普通函数类似,只需使用接口变量即可。
实现接口
首先,我们定义一个接口:
立即学习“go语言免费学习笔记(深入)”;
type Shape interface {
Area() float64
}然后,我们实现 Area() 方法的两个结构体:
type Rectangle struct {
Width float64
Height float64
}
func (r Rectangle) Area() float64 {
return r.Width * r.Height
}
type Circle struct {
Radius float64
}
func (c Circle) Area() float64 {
return math.Pi * c.Radius * c.Radius
}函数调用接口
可以实现用户的在线注册、登陆后可以添加图书、购买图书,可以对图书类别、出版社、价格等进行饼图分析默认帐号/密码:51aspx/51aspx该系统采用三层接口开发,App_Code下为三层结构的代码文件,适合三层入门者学习使用数据绑定控件使用的是GridView,顶部公用文件采用了UserControl用户控件调用DB_51aspx下为Sql数据库文件,附件即可【该源码由51aspx提供】
接下来,我们创建一个函数,该函数接受一个实现了 Shape 接口的参数:
func PrintArea(s Shape) {
fmt.Println("面积为:", s.Area())
}实战案例
现在,我们可以使用 PrintArea() 函数来打印不同形状的面积:
rect := Rectangle{Width: 5, Height: 10}
PrintArea(rect) // 输出:面积为: 50
circle := Circle{Radius: 5}
PrintArea(circle) // 输出:面积为: 78.53981633974483结论
通过使用接口,我们可以实现多态性并创建更通用的代码。调用接口中的函数很简单,只需使用接口变量即可。









