Java基礎(chǔ)之方法重寫和多態(tài)示例
本文實例講述了Java基礎(chǔ)之方法重寫和多態(tài)。分享給大家供大家參考,具體如下:
示例代碼:
子類的方法與父類的方法具有相同的返回類型和簽名,子類方法重寫父類方法。
class A{
int i,j; //父類變量
A(int a,int b){ //父類構(gòu)造
i=a;
j=b;
}
void show(){ //父類方法
System.out.println(i+" "+j);
}
}
class B extends A{ //繼承父類
int k; //子類變量
B(int a,int b,int c){ //子類構(gòu)造
super(a,b); //調(diào)用父類構(gòu)造
k=c;
}
void show(){ //子類方法重寫父類方法,會隱藏父類方法
System.out.println(i+" "+j);
}
void show(String msg){ //子類方法,重載父類方法(方法簽名不同,稱為重載)
//super.show(); //顯示調(diào)用父類方法
System.out.println(msg+k);
}
}
class Override{
public static void main(String[] args){
B b=new B(1,2,3);
b.show("This is k: ");
b.show();
}
}
多態(tài):父類對象可以引用子類對象,引用不同對象造成不同結(jié)果,稱為多態(tài)。
class Sup{ //父類
void who(){
System.out.println("Sup");
}
}
class Sub1 extends Sup{ //子類
void who(){
System.out.println("Sub1");
}
}
class Sub2 extends Sup{ //子類
void who(){
System.out.println("Sub2");
}
}
class DynDispDemo{
public static void main(String[] args){
Sup sup=new Sup(); //父類對象
Sub1 sub1=new Sub1(); //子類對象
Sub2 sub2=new Sub2(); //子類對象
Sup supf; //父類對象
supf=sup; //父類對象引用父類對象
supf.who(); //調(diào)用父類方法
supf=sub1; //父類對象引用子類對象
supf.who(); //調(diào)用子類方法
supf=sub2; //父類對象引用子類對象
supf.who(); //調(diào)用子類方法
}
}
更多java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java面向?qū)ο蟪绦蛟O(shè)計入門與進(jìn)階教程》、《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設(shè)計有所幫助。
相關(guān)文章
使用SpringMVC的@Validated注解驗證的實現(xiàn)
這篇文章主要介紹了使用SpringMVC的@Validated注解驗證的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
SpringBoot 整合 Avro 與 Kafka的詳細(xì)過程
本文介紹了如何在Spring Boot中使用Avro和Kafka進(jìn)行數(shù)據(jù)的序列化和反序列化,并通過MyBatisPlus將數(shù)據(jù)存入數(shù)據(jù)庫,感興趣的朋友跟隨小編一起看看吧2024-12-12
關(guān)于Sentinel中冷啟動限流原理WarmUpController
這篇文章主要介紹了關(guān)于Sentinel中冷啟動限流原理WarmUpController,具有很好的參考價值,希望對大家有所幫助。2023-04-04
java+SQL server2008學(xué)生信息管理系統(tǒng)源碼
這篇文章主要為大家詳細(xì)介紹了java+SQL server2008學(xué)生信息管理系統(tǒng)源碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-01-01
Springboot結(jié)合Mybatis-Plus實現(xiàn)業(yè)務(wù)撤銷回滾功能
本文介紹了如何在Springboot結(jié)合Mybatis-Plus實現(xiàn)業(yè)務(wù)撤銷回滾功能,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-12-12
JavaGUI界面實現(xiàn)頁面跳轉(zhuǎn)方法
這篇文章主要給大家介紹了關(guān)于JavaGUI界面實現(xiàn)頁面跳轉(zhuǎn)的相關(guān)資料, GUI是指圖形用戶界面,指采用圖形方式顯示的計算機操作用戶界面,需要的朋友可以參考下2023-07-07
java 使用DecimalFormat進(jìn)行數(shù)字的格式化實例詳解
這篇文章主要介紹了java 使用DecimalFormat進(jìn)行數(shù)字的格式化實例詳解的相關(guān)資料,需要的朋友可以參考下2017-06-06
java實現(xiàn)二維數(shù)組轉(zhuǎn)置的方法示例
這篇文章主要介紹了java實現(xiàn)二維數(shù)組轉(zhuǎn)置的方法,結(jié)合實例形式詳細(xì)分析了java二維數(shù)組轉(zhuǎn)置的原理、實現(xiàn)步驟與相關(guān)操作技巧,需要的朋友可以參考下2017-10-10
Java中用于SMB/CIFS網(wǎng)絡(luò)的JCIFS庫的用法詳解
JCIFS是一個強大的庫,允許Java應(yīng)用程序無縫地與SMB/CIFS資源進(jìn)行交互,本文將探討JCIFS的概念和工作原理以及如何在?Java?應(yīng)用程序中有效使用它,希望對大家有所幫助2024-12-12

