<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ~~~ /* Adapter 適配器模式: 將一個類的接口轉換成客戶端希望的另一個接口。 適配器模式使得原本由于接口不兼容而不能一起工作的那些類可以一起工作 個人想法:代理和適配器:代理和代理的對象接口一致,客戶端不知道代理對象, 而適配器是客戶端想要適配器的接口,適配器對象的接口和客戶端想要的不一樣, 適配器將適配器對象的接口封裝一下,改成客戶端想要的接口 作者: HCLAC 日期: 20170306 */ package adapter import ( "fmt" ) type Player interface { attack() defense() } type Forwards struct { name string } func (f *Forwards) attack() { if f == nil { return } fmt.Println(f.name, "在進攻") } func (f *Forwards) defense() { if f == nil { return } fmt.Println(f.name, "在防守") } func NewForwards(name string) Player { return &Forwards{name} } type Centers struct { name string } func (f *Centers) attack() { if f == nil { return } fmt.Println(f.name, "在進攻") } func (f *Centers) defense() { if f == nil { return } fmt.Println(f.name, "在防守") } func NewCenter(name string) Player { return &Centers{name} } type ForeignCenter struct { name string } func (f *ForeignCenter) attack(what string) { if f == nil { return } fmt.Println(f.name, "在進攻") } func (f *ForeignCenter) defense() { if f == nil { return } fmt.Println(f.name, "在防守") } type Translator struct { f ForeignCenter } // 這是用戶想要的接口 func (t *Translator) attack() { if t == nil { return } t.f.attack("進攻") } func (t *Translator) defense() { if t == nil { return } t.f.defense() } func NewTranslator(name string) Player { return &Translator{ForeignCenter{name}} } ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看