全國校區
北京
深圳
上海
廣州
武漢
成都
西安
鄭州
南京
長沙
Java實驗班
查看課程介紹
Java高級就業班
Java在職加薪班
Java夜校直播班
Java架構師班
更新時間:2022-10-10 09:23:58 來源:動力節點 瀏覽198次
在java多態中主要由以下兩種表現方式:
同一個方法中有多個同名的方法,但這些方法有不同的參數。因此在編譯時,就可以確定到底調用哪個方法。它是一種編譯時多態。重載可以被看做一個類中的方法多態性。
子類可以覆蓋父類的方法,因此同樣的方法會在父類和子類中有著不同的表現形式。 在java語言中,基類的引用變量不僅可以指向基類的實例對象,也可以指向其子類的實例對象。同時,接口的引用變量也可以指向其實現類的實例對象。這樣就可以實現動態綁定。 這樣就只有運行時才能確定調用哪個方法,因此通過方法覆蓋實現的多態也可以被稱為運行時多態。
類中的方法有多態的概念,類中的成員變量沒有多態的概念。
如下代碼, 打印的結果是1, 成員變量的取值是父類還是子類并不取決于創建對象的類型,而是取決于所定義變量的類型,這是在編譯期間決定的。
import org.junit.Test; public class Base { public int i = 1; @Test public void test(){ Base b = new Derived(); System.out.println(b.i);// b所屬的類型是Base, b.i指的是Base類中定義的i } } class Derived extends Base{ public int i = 2; }
以上就是關于“一文讀懂Java實現多態的機制”介紹,大家如果想了解更多相關知識,不妨來關注一下本站的Java教程,里面還有更豐富的知識等著大家去學習,希望對大家能夠有所幫助。
相關閱讀
如何通過反射創建對象
什么是數據庫連接池
增強for循環的示例
Map使用方法介紹
最新文章
Idea創建Maven工程的方法
Git版本控制系統詳解
Docker網絡配置方法
學習+測評 15天免費學
圍繞企業 直達就業
業余時間學 超高性價比
升職加薪 快速變現
提交申請后,顧問老師會電話與您溝通安排學習
初級 202925
初級 203221
初級 202629
初級 203743
答:零基礎學Java不要盲目,可以先嘗試自己適不適合... 查看回答