更新時間:2020-07-20 15:59:48 來源:動力節(jié)點 瀏覽2023次
Java實例
我們之前已經(jīng)學習了Java方法的重寫,本文我們來看下Java方法覆蓋的實現(xiàn)。
方法重載與方法覆蓋區(qū)別如下:
方法重載(Overloading):如果有兩個方法的方法名相同,但參數(shù)不一致,哪么可以說一個方法是另一個方法的重載。
方法覆蓋(Overriding):如果在子類中定義一個方法,其名稱、返回類型及參數(shù)簽名正好與父類中某個方法的名稱、返回類型及參數(shù)簽名相匹配,那么可以說,子類的方法覆蓋了父類的方法。
以下實例演示了Java方法覆蓋(Overriding)代碼的實現(xiàn):
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
以上就是動力節(jié)點java培訓機構的小編針對“編程實例之Java方法覆蓋”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業(yè)
業(yè)余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習