成員變數的隱藏:
如果在子類中對從父類繼承來的成員變數進行重新定義,即出現了子類變數對父類變數的隱藏。所謂隱藏是指子類擁有兩個相同名字的變數,乙個是繼承自父類,另乙個是由自己定義的。當子類執行它自己定義的方法時,如果操作該變數,所操作的是它自己定義的變數,
而把繼承自父類的變數「隱藏」起來。當子類執行從父類繼承的操作時,如果操作該變數,所操作的是繼承自父類的成員變數。
舉例:
class superclass
…… }
class subclass extends superclass
…… }
這個例子中,subclass是superclass的乙個子類。其中宣告了乙個和父類superclass同名的變數x,並定義了與之相同的方法setx, 這時在子類subclass中,父類的成員變數x被隱藏 ,父類的方法setx被過載。於是子類物件所使用的變數x為子類中定義的x,子類物件呼叫的方法setx( )為子類中所實現的方法。
關於繼承的乙個問題
class a virtual a class b public a virtual b class c public b virtual c int fun int n char last4hex unsigned int num,char a 5 int main int argc,char a...
關於繼承的乙個問題
關於繼承的乙個問題 liupq 2009.12.5 下面程式中的f2 函式為什麼是錯誤的 include include using namespace std class abc protected int n class def public abc error void f3 def b pr...
Java中的抽象 繼承 多型 乙個小例子
解釋多型最清晰的方法是通過乙個抽象的基類 或者介面 看下面的乙個抽象基類定義 public abstract class human 我們定義了乙個被稱為 人類 的抽象基類.去撒尿 這個方法是抽象的,因為對於整個人類來說沒有乙個統一的撒尿方法.只有當你具體地討論這個人是男人還是女人的時候,撒尿 這個...