<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智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## 連載:面向對象葵花寶典:思想、技巧與實踐(12) - “繼承” 詳解 **繼承?=?遺傳** 繼承是面向對象最基本的特征,如果一個語言沒有繼承機制,就談不上真正的面向對象的語言。 ? 繼承本身很好理解,和我們日常生活中的“繼承”概念基本一樣:子承父業!所以,你可以看到面向對象的編程語言里面,有了“父類”、“子類”的概念。 ? 但是我個人認為“繼承”這個說法并不確切,一般我們理解“繼承”,都是理解為繼承產業、繼承財產,例如李澤鉅繼承李嘉誠的事業。但在面向對象的領域里面,并不是“子類”繼承了“父類”的產業,而是繼承了“父類”的特點,具體來說就是繼承了“屬性和方法”。 ? 所以我認為“繼承”更加貼切的說法是類似生物學上的“遺傳”,按照中國話的說法就是“龍生龍,鳳生鳳,老鼠生來會打洞”,面向對象的繼承意味“子類”遺傳了了某些“父類”的屬性和方法。 ? 但就像生物學上的進化論一樣,有遺傳就有變異,正因為有了變異,才會有新的物種產生;有了變異,面向對象才有子類的出現。 ? 當然,面向對象的進化不是“自然選擇”的結果,而是你——偉大的程序猿——選擇的結果。 除了可以選擇子類如何變異外,你——偉大的程序猿——還可以控制另外一個遺傳因素:你可以決定父類遺傳什么給子類! ? 也就是說,你可以控制父類將哪些“基因”遺傳下去,你也可以控制子類如何變異出哪些新基因。 所以,你——偉大的程序猿——就是面向對象世界的“上帝”! ? #### ?繼承?vs?抽象? 我們來看看一個繼承的實例: ?![](https://box.kancloud.cn/2016-01-20_569f5cc96f8c4.jpg) ? ? 如果你還記得前面看過的“抽象”一章的內容,你一定會感到很驚訝: 抽象和繼承的圖完全相反,那這兩個東東到底有什么區別和聯系呢? ? 抽象:是分析和設計過程中的一個動作,一個技巧,通過抽象得出類 繼承:是實現過程中的一個動作,基于抽象結果,通過編程語言的特性,完成抽象圖的模擬。 ? 因此,抽象和繼承是前后銜接的關系,先有抽象,通過抽象得出類,后通過繼承來表達抽象結果
                  <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>

                              哎呀哎呀视频在线观看