递归火山软件开发平台

标题: GO接口,在火山服务器怎么表达?始终没理解。 [打印本页]

作者: zqiz    时间: 2024-10-19 22:45
标题: GO接口,在火山服务器怎么表达?始终没理解。
例:package main
import "fmt"

type Shape interface {
    area() float64
}

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 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
用虚拟方法就行了。一看就是以前的基础知识不牢靠。虚拟方法火山安卓,火山视窗都有。

这不就实现了。

(, 下载次数: 257)

作者: 创世魂    时间: 2024-10-19 23:15
当然另外就是火山表格里面定义interface 接口类是没办法定义的。
使用虚拟方法输出的也不是接口类。但是原理最终的计算结果是一样的。
作者: zqiz    时间: 2024-10-20 12:25
创世魂 发表于 2024-10-19 23:15
当然另外就是火山表格里面定义interface 接口类是没办法定义的。
使用虚拟方法输出的也不是接口类。但是原 ...

谢谢,@创世魂
服务器@接口,也没用上?go服务器接口与火山安卓接口,语法不一样吗?




欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4