<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智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # Java 多態示例 > 原文: [https://javatutorial.net/java-polymorphism-example](https://javatutorial.net/java-polymorphism-example) 該示例演示了 Java 編程語言中多態的用法 ## 什么是多態 多態一詞來自希臘語,意思是“許多形式”。 Java 中的多態允許類的子類定義其自己的獨特行為,而又共享父類的某些相同功能。 我將從繼承的角度討論多態,在繼承中,名稱相同的多個方法的功能稍有不同。 此技術也稱為方法覆蓋。 多態是[面向對象編程(OOP)](https://javatutorial.net/java-oop)背后的四個主要概念之一。 OOP 問題在求職面試中很常見,因此您可能會在下次 Java 求職面試中遇到有關多態的問題。 ## Java 多態示例 在此示例中,我們將創建 3 個類來演示多態,并創建一個類來測試該概念。 我們的超類稱為`Animal`。 動物類的后繼者是`Dog`和`Cat`類。 這些也是動物,對不對? 這就是多態所在 - 同一對象的多種形式具有不同的行為。 為了說明這一點,我們將使用一種名為`makeSound()`的方法,并在后繼類中重寫此方法的輸出。 ![Java polymorphism example](https://img.kancloud.cn/0c/7d/0c7d4c17563b116b6d3180346a1a1caa_629x308.jpg) Java 多態示例 當我們調用`makeSound()`方法時,通用動物類將輸出一些抽象文本: ```java package net.javatutorial; public class Animal { public void makeSound() { System.out.println("the animal makes sounds"); } } ``` 擴展了`Animal`的`Dog`類將產生稍微不同的結果–狗將吠叫。 為此,我們擴展了`Animal`類并覆蓋了`makeSound()`方法 ```java package net.javatutorial; public class Dog extends Animal{ @Override public void makeSound() { System.out.println("the dog barks"); } } ``` 顯然,我們必須對`Cat`類執行相同的操作才能制作出貓叫聲。 ```java package net.javatutorial; public class Cat extends Animal { @Override public void makeSound() { System.out.println("the cat meows"); } } ``` 最后,讓我們測試一下我們的創作。 ```java package net.javatutorial; public class PolymorphismExample { public static void main(String[] args) { Animal animal = new Animal(); animal.makeSound(); Dog dog = new Dog(); dog.makeSound(); animal = new Cat(); animal.makeSound(); } } ``` 首先,我們創建一個常規的`Animal`對象并調用`makeSound()`方法。 我們對新創建的`Dog`對象執行相同的操作。 現在請注意對`animal = new Cat()`的調用 - 我們將新的`Cat`對象分配給`Animal`對象。 貓是動物,還記得嗎? 因此,我們總是可以這樣做: ```java Animal animal = new Cat(); ``` 通過調用此對象的`makeSound()`方法,實際上將調用`Cat`類中的重寫的`makeSound()`方法。 最后,這是程序的輸出 ```java the animal makes sounds the dog barks the cat meows ``` ### 參考文獻 官方 Oracle [多態示例](https://docs.oracle.com/javase/tutorial/java/IandI/polymorphism.html)
                  <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>

                              哎呀哎呀视频在线观看