zoukankan      html  css  js  c++  java
  • golang对象

    对象和组合

    package main
    import (
    "fmt"
    
    )
    
    type father struct {
    name string
    sex int
    }
    type sun struct {
    father
    age int
    }
    func main() {
    m:=father{name:"father",sex:11}
    s:=sun{father:father{name:"son",sex:12},age:14}
    fmt.Println(s)
    fmt.Println("name",s.name)
    fmt.Println("name",m.name)
    fmt.Println("sex",s.sex)
    fmt.Println("sex",m.sex)
    fmt.Println("age",s.age)
    }
    

      

    接口实例:

    package main
     
    import "fmt"
    
    //接口,只是一个提示,不在接口定义中实现
    type Handler interface {
        Do(k, v interface{})
    }    
    
    //使用接口
    func Each(m map[string]int, h Handler) {
        if m != nil && len(m) > 0 {
            for k, v := range m {
                h.Do(k, v)
            }
        }
    }
    type welcome string
    
    //接口实现处
    func (w welcome) Do(k, v interface{}) {
        fmt.Printf("%s,我叫%s,今年%d岁
    ", w,k, v)
    }
     
    func main(){ 
        persons := make(map[string]int)
        persons["张三"] = 20
        persons["李四"] = 23
        persons["王五"] = 26
    
        var w welcome = "大家好"
    
        Each(persons, w)
    }
    

      

  • 相关阅读:
    python生成CSV文件并发送邮件
    Live2d Test Env
    Live2d Test Env
    Live2d Test Env
    Live2d Test Env
    Live2d Test Env
    Live2d Test Env
    Live2d Test Env
    Live2d Test Env
    扔鸡蛋
  • 原文地址:https://www.cnblogs.com/peterinblog/p/7837418.html
Copyright © 2011-2022 走看看