GO设计模式07代理模式

Posted XY丶YX

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GO设计模式07代理模式相关的知识,希望对你有一定的参考价值。

package main

import (
	"fmt"
)

//抽象主体
type Subject interface {
	Request()
}

//真实主体
type RealSubject struct{}

func (rs *RealSubject) Request() {
	fmt.Println("real subject")
}

//代理
type Proxy struct {
	RealSubject
}

func (proxy *Proxy) Request() {
	proxy.RealSubject.Request()
}

//客户端调用
func main() {
	fmt.Println("hello")
	tRealSubject := RealSubject{}
	tProxy := Proxy{tRealSubject}
	tProxy.Request()
}

以上是关于GO设计模式07代理模式的主要内容,如果未能解决你的问题,请参考以下文章

[设计模式C++go]结构型模式:代理模式

[设计模式C++go]结构型模式:代理模式

[设计模式C++go]结构型模式:代理模式

设计模式-代理模式(Go语言描述)

[07]Go设计模式:过滤器模式(FilterPattern)

设计模式-代理模式(Go语言描述)