美文网首页
代理模式

代理模式

作者: 小幸运Q | 来源:发表于2021-02-22 19:35 被阅读0次

    image.png

    为其他对象提供一种代理以控制对这个对象的访问。

    image.png
    package main
    
    import (
        "fmt"
    )
    
    // 对象
    type Subject interface {
        request(name string)
    }
    
    type RealSubject struct {
    }
    
    func (this *RealSubject) request(name string) {
        fmt.Println("RealSubject:", name)
    }
    
    // 对象的代理
    type Proxy struct {
        realSubject *RealSubject
    }
    
    func (this *Proxy) request(name string) {
        realSubject := &RealSubject{}
        realSubject.request(name)
        fmt.Println("Proxy:", name)
    }
    
    func main() {
        var sub Subject
        sub = &Proxy{}
        sub.request("localhost")
    }
    

    相关文章

      网友评论

          本文标题:代理模式

          本文链接:https://www.haomeiwen.com/subject/fbcwxltx.html