zoukankan      html  css  js  c++  java
  • go语言从例子开始之Example19.接口

    接口 是方法特征的命名集合。

    Example:

    package main
    
    import "fmt"
    
    
    //让方法,实现api这个接口。
    type api interface{
        getname() string
        getnumber() int
    }
    
    
    type product struct{
        name string
        number int
    }
    
    //为结构体定义两个方法。getname() getnumber()
    
    //要在 Go 中实现一个接口,我们只需要实现接口中的所有方法
    func (r product) getname() string{
        return r.name
    }
    
    func (r product) getnumber() int{
        return 1*r.number
    }
    
    //如果一个变量的是接口类型,那么我们可以调用这个被命名的接口中的方法。
    func invoke(ap api){
        fmt.Println(ap.getname())
        fmt.Println(ap.getnumber())
    }
    
    
    func main(){
    
        t := product{name:"yhleng", number: 50}
    
        //结构体类型product都实现了api接口
        //所以我们可以使用它们的实例作为 invoke 的参数。
        invoke(t)
    
    }

    Result:

    $ go run example.go
    yhleng
    50

    坐标: 上一个例子    下一个例子

  • 相关阅读:
    25 Groovy 相关资料
    24 使用Maven 或 Gradle构建groovy
    UVA
    UVA
    UVA
    UVA
    UVA
    【JZOJ4235】序列【数论,数学】
    【JZOJ4235】序列【数论,数学】
    【JZOJ5230】队伍统计【状压DP】
  • 原文地址:https://www.cnblogs.com/yhleng/p/11738255.html
Copyright © 2011-2022 走看看