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

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ## [服務提供](https://lingcoder.gitee.io/onjava8/#/book/01-What-is-an-Object?id=%e6%9c%8d%e5%8a%a1%e6%8f%90%e4%be%9b) ? 在開發或理解程序設計時,我們可以將對象看成是“服務提供者”。你的程序本身將為用戶提供服務,并且它能通過調用其他對象提供的服務來實現這一點。我們的最終目標是開發或調用工具庫中已有的一些對象,提供理想的服務來解決問題。 ? 那么問題來了:我們該選擇哪個對象來解決問題呢?例如,你正在開發一個記事本程序。*你可能會想到在屏幕輸入默認的記事本對象*,一個用于檢測不同類型打印機并執行打印的對象。這些對象中的某些已經有了。那對于還沒有的對象,我們該設計成啥樣呢?這些對象需要提供哪些服務,以及還需要調用其他哪些對象? ? 我們可以將這些問題一一分解,抽象成一組服務。軟件設計的基本原則是高內聚:每個組件的內部作用明確,功能緊密相關。然而經常有人將太多功能塞進一個對象中。例如:在支票打印模塊中,你需要設計一個可以同時讀取文本格式又能正確識別不同打印機型號的對象。正確的做法是提供三個或更多對象:一個對象檢查所有排版布局的目錄;一個或一組可以識別不同打印機型號的對象展示通用的打印界面;第三個對象組合上述兩個服務來完成任務。這樣,每個對象都提供了一組緊密的服務。在良好的面向對象設計中,每個對象功能單一且高效。這樣的程序設計可以提高我們代碼的復用性,同時也方便別人閱讀和理解我們的代碼。只有讓人知道你提供什么服務,別人才能更好地將其應用到其他模塊或程序中。
                  <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>

                              哎呀哎呀视频在线观看