<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之旅 廣告
                > **多態:給不同的對象發送同一個消息,這些對象會根據這個消息分別給出不同的反饋。** 多態背后的思想:將"做什么"和"誰去做以及怎樣去做"分離。也就是將**不變的事物**與**可變的事物**分離。 ### 1.對象的多態性 ~~~ function makeSound(animal){ animal.sound(); } var Duck = function(){ } Duck.prototype.sound = function(){ console.log("鴨叫"); } var Chicken = function(){}; Chicken.prototype.sound = function(){ console.log("雞叫") } makeSound(new Duck); ~~~ 現在,我們向鴨和雞發出"叫喚"的消息,它們接收到消息后分別作出不同的反應。 ### 2.例子 * 在電影拍攝現場,當導演喊出action,主角開始背臺詞,照明師負責打燈光,后面的群眾演員假裝中槍倒地,道具師往鏡頭里撒上雪花。在得到同一個消息時,每個對象都知道自己應該做什么。 * 利用對象的多態性,導演在發布消息時,不必考慮各個對象接到消息后應該做什么。對象應該做什么應該是實現約定好的,而不是臨時決定的。每個對象應該做什么應該已經成為該對象的一個方法,被安裝在對象內部,每個對象對自己的行為負責。所以這些對象可以根據同一消息,有條不紊的各自工作。 ~~~ function action(person){ person.act(); } var Lighter = function(){} Lighter.prototype.act = function(){ console.log("打開片場的燈光") } var Commoner = function(){} Commoner.prototype.act = function(){ console.log("群眾演員倒地") } var Leader = function(){} Leader.prototype.act = function(){ console.log("主角背臺詞") } action(new Lighter()) ~~~
                  <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>

                              哎呀哎呀视频在线观看