zoukankan      html  css  js  c++  java
  • go 接口以及对象的使用

    // Sample program to show how to declare methods and how the Go
    // compiler supports them.
    package main
    
    import (
        "fmt"
    )
    
    // user defines a user in the program.
    type user struct {
        name  string
        email string
    }
    
    // notify implements a method with a value receiver.
    func (u user) notify() {
        fmt.Printf("Sending User Email To %s<%s>
    ",
            u.name,
            u.email)
    }
    
    // changeEmail implements a method with a pointer receiver.
    func (u *user) changeEmail(email string) {
        fmt.Printf("change Email from <%s> To <%s>
    ", u.email, email)
        u.email = email
    }
    
    // main is the entry point for the application.
    func main() {
        // Values of type user can be used to call methods
        // declared with a value receiver.
        bill := user{"Bill", "bill@email.com"}
        bill.notify()
    
        // Pointers of type user can also be used to call methods
        // declared with a value receiver.
        lisa := &user{"Lisa", "lisa@email.com"}
        lisa.notify()
        fmt.Println()
        // Values of type user can be used to call methods
        // declared with a pointer receiver.
        bill.changeEmail("bill@newdomain.com")
        bill.notify()
    
        // Pointers of type user can be used to call methods
        // declared with a pointer receiver.
        lisa.changeEmail("lisa@newdomain.com")
        lisa.notify()
    }

    输出

    Sending User Email To Bill<bill@email.com>
    Sending User Email To Lisa<lisa@email.com>
    
    change Email from <bill@email.com> To <bill@newdomain.com>
    Sending User Email To Bill<bill@newdomain.com>
    change Email from <lisa@email.com> To <lisa@newdomain.com>
    Sending User Email To Lisa<lisa@newdomain.com>
  • 相关阅读:
    Wireshark教程
    存储基础知识4——
    java核心技术 要点笔记3
    java核心技术 要点笔记2
    java核心技术 要点笔记1
    java Vamei快速教程22 内存管理和垃圾回收
    java Vamei快速教程21 事件响应
    php框架练习
    php之图片处理类缩略图加水印
    php之框架增加日志记录功能类
  • 原文地址:https://www.cnblogs.com/sea-stream/p/10357492.html
Copyright © 2011-2022 走看看