更新時間:2022-11-14 10:44:34 來源:動力節點 瀏覽1399次
相信大家對Java super的定義已經有所了解,Java中的super關鍵字是一個引用變量,用于引用直接父類對象。
每當您創建子類的實例時,都會隱式創建父類的實例,該實例由超引用變量引用。
super 可用于引用直接父類實例變量。
super 可用于調用直接父類方法。
super() 可用于調用直接父類構造函數。
我們可以使用 super 關鍵字來訪問父類的數據成員或字段。如果父類和子類具有相同的字段,則使用它。
動物 類{
字符串顏色= “白色” ;
}
類 狗 擴展 動物{
字符串顏色= “黑色” ;
無效 打印顏色(){
System.out.println(color); //打印Dog類的顏色
System.out.println( super .color); //打印Animal類的顏色
}
}
類 TestSuper1{
公共靜態無效 主要(字符串參數[]){
狗 d=新 狗();
d.printColor();
}}
輸出:
黑色的
白色的
在上面的例子中,Animal 和 Dog 兩個類都有一個共同的屬性 color。如果我們打印顏色屬性,它會默認打印當前類的顏色。要訪問父屬性,我們需要使用 super 關鍵字。
super 關鍵字也可以用于調用父類方法。如果子類包含與父類相同的方法,則應使用它。換句話說,如果方法被覆蓋,則使用它。
動物 類{
無效 吃(){System.out.println(“吃...” );}
}
類 狗 擴展 動物{
void eat(){System.out.println( "吃面包..." );}
void bark(){System.out.println( "吠叫..." );}
無效 工作(){
超級.eat();
吠();
}
}
類 TestSuper2{
公共靜態無效 主要(字符串參數[]){
狗 d=新 狗();
d.work();
}}
輸出:
吃...
叫聲...
在上面的例子中,Animal 和 Dog 兩個類都有eat() 方法,如果我們從Dog 類調用eat() 方法,它會默認調用Dog 類的eat() 方法,因為優先級是local。
要調用父類方法,我們需要使用 super 關鍵字。
super 關鍵字也可以用來調用父類的構造函數。讓我們看一個簡單的例子:
動物 類{
Animal(){System.out.println( "創建了動物" );}
}
類 狗 擴展 動物{
狗(){
超級();
System.out.println( "狗被創建" );
}
}
類 TestSuper3{
公共靜態無效 主要(字符串參數[]){
狗 d=新 狗();
}}
輸出:
動物被創造出來
狗被創造出來
以上就是關于“Java中關鍵字super的用法”介紹,大家如果對此比較感興趣,想了解更多相關知識,不妨來關注一下本站的Java教程,里面還有更豐富的知識等著大家去學習,相信對大家一定會有所幫助的。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習