go 接口

1.基础

接口命名一般在最后加 er

package main

//计算
type calculationer interface {
    work(i int, j int) int
}

//加法结构体
type add struct {
}

func (c add) work(i int, j int) int {
    return i + j
}

//减法结构体
type sub struct {
    i int
    j int
}

func (s sub) work(i int, j int) int {
    return i - j
}

func main() {
    var calcu calculationer
add1 :
= add{} calcu = add1 println(calcu.work(3, 5)) sub1 := sub{} calcu = sub1 println(calcu.work(3, 5)) }

2.空接口

作为参数时,可以传递进任何类型参数

package main

import "fmt"

func f(i interface{}) {
    fmt.Printf("type:%T
", i)
}
func main() {
    f(3)
    f("abc")
}

原文地址:https://www.cnblogs.com/buchizaodian/p/12926965.html