Go接口的一些示例是什么?

我找到了一篇有趣的有关Go的博客文章。

我试图理解接口的概念,但是我发现很难从博客文章中的代码片段中做到这一点,而从语言规范中几乎是不可能的。

谁能在工作程序中指出Go接口的简单示例?


慕尼黑8549860
浏览 218回答 3
3回答

拉莫斯之舞

这是一个进行中的学习练习,当然不是一个好的风格的好例子,但是您可以在这里(spec)。另外,作为一个更奇特的示例,我在go-nuts邮件列表上发表了一篇关于使用interface {}来构建可处理匿名数据的功能(在本例中为“三元运算”功能)的文章:package mainimport "fmt";func Tern(exp bool, a interface{}, b interface{}) (interface{}) {    if exp { return a }    return b}func main() {    a := 7; b := 1;    result := Tern(a > b, a, b);    fmt.Printf("%d\n", result);}

智慧大石

package maintype Stringer interface {    String() string}type pie inttype pizza stringfunc (p pie) String() string{    return "pie"}func (p pizza) String() string{    return "pizza"}func main(){    var a pie    var b pizza    fmt.Println(a,b) //fmt.Println() will look for Stringers and call their String() method.}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go