更新時間:2020-07-20 15:59:48 來源:動力節點 瀏覽2026次
Java實例
我們之前已經學習了Java方法的重寫,本文我們來看下Java方法覆蓋的實現。
方法重載與方法覆蓋區別如下:
方法重載(Overloading):如果有兩個方法的方法名相同,但參數不一致,哪么可以說一個方法是另一個方法的重載。
方法覆蓋(Overriding):如果在子類中定義一個方法,其名稱、返回類型及參數簽名正好與父類中某個方法的名稱、返回類型及參數簽名相匹配,那么可以說,子類的方法覆蓋了父類的方法。
以下實例演示了Java方法覆蓋(Overriding)代碼的實現:
Findareas.java文件
public?class?Findareas{
?public?static?void?main?(String?[]agrs){
?Figure?f=?new?Figure(10?,?10);
?Rectangle?r=?new?Rectangle(9?,?5);
?Figure?figref;
?figref=f;
?System.out.println("Area?is?:"+figref.area());
?figref=r;
?System.out.println("Area?is?:"+figref.area());
?}
}
class?Figure{
?double?dim1;
?double?dim2;
?Figure(double?a?,?double?b)?{
?dim1=a;
?dim2=b;
?}
?Double?area()?{
?System.out.println("Inside?area?for?figure.");
?return(dim1*dim2);
?}
}
class?Rectangle?extends?Figure?{
?Rectangle(double?a,?double?b)?{
?super(a?,b);
?}
?Double?area()?{
?System.out.println("Inside?area?for?rectangle.");
?return(dim1*dim2);
?}
}
以上代碼運行輸出結果為:
Inside?area?for?figure.
Area?is?:100.0
Inside?area?for?rectangle.
Area?is?:45.0
以上就是動力節點java培訓機構的小編針對“編程實例之Java方法覆蓋”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習