遇见YY

导航

 

go代码:

package main

import "fmt"

type Animal interface {
    run()
    walk()
}

type Dog struct {
    Id int
}

func (dog Dog) run()  {
    fmt.Printf("I am Dog,I can Run!\n")
}

func (dog Dog) walk(){
    fmt.Printf("I am Dog,I can walk!\n")
}

type Pig struct {
    Id int
}

func (pig Pig) run()  {
    fmt.Printf("I am Pig,I can Run!\n")
}

func main() {
    dog := Dog{100}
    var animal0 interface{} = dog
    if _, ok := animal0.(Animal); ok {
        fmt.Printf("animal0 implement Animal interface!\n")
    }else {
        fmt.Printf("animal0 not implement Animal interface!\n")
    }

    pig:=Pig{18}
    var animal1 interface{} = pig
    if _, ok := animal1.(Animal); ok {
        fmt.Printf("animal1 implement Animal interface!\n")
    }else {
        fmt.Printf("animal1 not implement Animal interface!\n")
    }

}

结果:

animal0 implement Animal interface!
animal1 not implement Animal interface!

 

posted on 2020-12-09 20:26  一骑红尘妃子笑!  阅读(917)  评论(0编辑  收藏  举报