- 論壇徽章:
- 0
|
4 . 8 類的繼承
繼承是一種由已有的類創(chuàng)建新類的機制.利用繼承,我們可以先創(chuàng)建一個共有屬性的一般類,根據(jù)該一般類再創(chuàng)建具有特殊屬性的新類,新類繼承一般類的狀態(tài)和行為,并根據(jù)需要增加它自己的新的狀態(tài)和行為.由繼承而得到的類稱為子類,被繼承的類稱為父類、超類 .Java不支持多重繼承 子類只能有一個父類。
4.8.3. 成員變量的隱藏和方法的重寫
當我們在子類中定義的成員變量和父類中的成員變量同名時,則父類中的成員變量不能被繼承,此時稱子類的成員變量隱藏了父類的成員變量.當子類中定義了一個方法,并且這個方法的名字,返回類型,及參數(shù)個數(shù)和類型和父類的某個方法完全相同時,父類的這個方法將被隱藏.我們說我們重寫了父類的方法或置換了父類的方法.
子類通過成員變量的隱藏和方法的重寫可以把父類的狀態(tài)和行為改變?yōu)樽陨淼臓顟B(tài)和行為.
對于子類創(chuàng)建的一個對象,如果子類重寫了父類的方法,則運行時系統(tǒng)調(diào)用子類重寫的方法,如果子類繼承了父類的方法 未重寫 ,那么子類創(chuàng)建的對象也可以調(diào)用這個方法,只不過方法產(chǎn)生的行為和父類的相同而已.
注:重寫父類的方法時,不可以降低方法的訪問權(quán)限.下面的代碼中,子類重寫父類的方法f,該方法在父類中的訪問權(quán)限是protected 級別,子類重寫時不允許級別低于protected 級別.<SPAN lang=EN-US style="FONT-SIZE:
本文來自ChinaUnix博客,如果查看原文請點:http://blog.chinaunix.net/u/9388/showart_70451.html |
|