更新時間:2020-07-20 15:59:48 來源:動力節(jié)點 瀏覽2311次
Java實例
我們之前已經(jīng)學(xué)習(xí)了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);
?}
}
以上代碼運(yùn)行輸出結(jié)果為:
Inside?area?for?figure.
Area?is?:100.0
Inside?area?for?rectangle.
Area?is?:45.0
以上就是動力節(jié)點java培訓(xùn)機(jī)構(gòu)的小編針對“編程實例之Java方法覆蓋”的內(nèi)容進(jìn)行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。
相關(guān)閱讀

初級 202925

初級 203221

初級 202629

初級 203743