<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                [TOC] ## 概述 **模板方法模式**是一種行為設計模式,它在超類中定義了一個算法的框架,允許子類在不修改結構的情況下重寫算法的特定步驟。 - 某些步驟可在基類中直接實現。 - 某些可定義為抽象類型。 - 模板方法定義了某個算法的框架 - 一個類可包含多個模板方法 ## 問題 該程序的首個版本僅支持 DOC 文件。在接下來的一個版本中,程序能夠支持 CSV 文件。一個月后,你“教會”了程序從 PDF 文件中抽取數據。 ![](https://img.kancloud.cn/fe/90/fe9001a5f036c1cb4bb5ff186f56ceef_1240x920.png) ## 模式結構 ![](https://img.kancloud.cn/c0/38/c038fae158248955c4d5446724d2ac91_680x760.png) 1. **抽象類**(Abstract-Class)會聲明作為算法步驟的方法,以及依次調用它們的實際模板方法。算法步驟可以被聲明為`抽象`類型,也可以提供一些默認實現。 2. **具體類**(Concrete-Class)可以重寫所有步驟,但不能重寫模板方法自身。 ## 應用場景 1. 當你只希望客戶端擴展某個特定算法步驟, 而不是整個算法或其結構時, 可使用模板方法模式。 2. 當多個類的算法除一些細微不同之外幾乎完全一樣時, 你可使用該模式。 但其后果就是, 只要算法發生變化, 你就可能需要修改所有的類。
                  <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>

                              哎呀哎呀视频在线观看