zqiz 发表于 2024-10-19 22:45:52

GO接口,在火山服务器怎么表达?始终没理解。

例:package main
import "fmt"

type Shape interface {
    area() float64
}

type Rectangle struct {
    widthfloat64
    height float64
}

func (r Rectangle) area() float64 {
    return r.width * r.height
}

type Circle struct {
    radius float64
}

func (c Circle) area() float64 {
    return 3.14 * c.radius * c.radius
}

func main() {
    var s Shape

    s = Rectangle{width: 10, height: 5}
    fmt.Printf("矩形面积: %f\n", s.area())

    s = Circle{radius: 3}
    fmt.Printf("圆形面积: %f\n", s.area())
}

创世魂 发表于 2024-10-19 23:10:47

用虚拟方法就行了。一看就是以前的基础知识不牢靠。虚拟方法火山安卓,火山视窗都有。

这不就实现了。


创世魂 发表于 2024-10-19 23:15:04

当然另外就是火山表格里面定义interface 接口类是没办法定义的。
使用虚拟方法输出的也不是接口类。但是原理最终的计算结果是一样的。

zqiz 发表于 2024-10-20 12:25:02

创世魂 发表于 2024-10-19 23:15
当然另外就是火山表格里面定义interface 接口类是没办法定义的。
使用虚拟方法输出的也不是接口类。但是原 ...

谢谢,@创世魂
服务器@接口,也没用上?go服务器接口与火山安卓接口,语法不一样吗?
页: [1]
查看完整版本: GO接口,在火山服务器怎么表达?始终没理解。