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

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                這一節我們來看java中的單繼承和多重繼承。 **在java語言中,支持的是單繼承,不直接支持多繼承**,但是對C++中的多繼承進行了改良。 那么什么是單繼承和多繼承呢? 單繼承:一個子類只能有一個直接父類。 多繼承:一個子類可以有多個直接父類。這個在java中是不允許的。 為什么不允許呢?我們看一個例子: ~~~ class A { void method() { System.out.println("a"); } } class B { void method() { System.out.println("b"); } } class C extends A,B { } ~~~ 對于上面的情況,如果當我們調用C對象的method方法時,就會出現不確定性錯誤了,java也是以這個問題進行改良,從而不直接支持多繼承。 所以我們可以看到,java中不直接支持多繼承的原因就是:**當多個類中有相同成員時會產生調用的不確定性。** java語言中還支持多重繼承。 比如下面的例子就是一個多重繼承: ~~~ class A { } class B extends A { } class C extends B { } ~~~ 這就是多重繼承的形式,對于上面的繼承,就出現了繼承體系,而在這個繼承體系中,A是最頂層類,C是對子類。 通過上面的繼承體系我們不難看出,A實現的是最基本最基礎的功能。 那么我們在實際開發中應該如何使用這個繼承體系呢? **第一步:查看該體系中的頂層類(這里是A),了解該體系的基本功能。** **第二步:創建體系中的最子類對象(這里是C),完成功能的使用。** 通過上面的兩步,我們就可以按需使用一個繼承體系了。 這兩節我們一直在說繼承,在9.1中我們也說到繼承可以提高代碼的復用性,但是我們一定要**注意:千萬不要為了提高代碼復用性去定義繼承**。 這是為什么呢?我們看下面例子: ~~~ class A { void method1(){} void method2(){} } class B { void method1(){} void method3(){} } ~~~ 我們發現兩個類中都有method1方法,那么我們為了提高復用性而去繼承: ~~~ class A { void method1(){} void method2(){} } class B extends A { void method3(){} } ~~~ B類中確實有了method1方法,可以也同時繼承了method2方法,但method2方法其實并不是B中的方法,這就出現了問題。 這就讓我們必須明確什么時候定義繼承:**當類與類之間存著所屬關系時,就定義繼承**。 那么什么是所屬關系呢?比如X是Y中的一種,就是說X屬于Y,就是一種所屬關系。 我們這樣表示所屬關系:**is a 關系,就是所屬關系。** 所以當我們發現兩個類是一種is a 關系時,我們就可以定義繼承。
                  <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>

                              哎呀哎呀视频在线观看