父類物件引用子類例項 父母代表孩子做事

2021-08-25 13:07:29 字數 765 閱讀 8739

子類繼承父類的屬性和方法,使建立子類變得很簡單,實現了**重用。繼承還有乙個重要的特性,父類物件可以引用子類例項。也就是子類例項可以賦值給父類的物件變數。

這個特性可以這樣理解:兒子繼承父親,兒子又把管理自己事務的權利交給父親,那麼父親就可以代表兒子處理事務,這就是父類物件引用子類例項。現在生活中,父母可以代表兒子處理事務,總公司可以代表子公司生命權利。

父類指標要訪問子類的成員的情況下,要強制型別轉換。

父類的物件變數=new 子類型別;

((子類型別)父類引用).子類變數

using system;

class father

", this._wealth);}}

class son: father

}class daughter: father

}class test

}別人的總結:

將子類物件賦值給父類物件,所得到物件是這樣的乙個物件:

它是乙個編譯是為父類物件,但執行卻是乙個子類物件。具體特徵如下:

1.被宣告為父類物件

2.擁有父類屬性

3.占用子類的記憶體空間

4.子類方法覆蓋父類的方法時,此時物件呼叫的是子類的方法;否則,自動呼叫繼承父類的方法.

5.我人認為這個物件既不是父類物件,也不是子類物件.當我們用到它的方法時,

我便把它看成子類物件;若用到它的屬性時,我把它看成父類物件.

它是乙個占用父類屬性,而使用子類方法的物件.至於到底是什麼物件,我認為還是得根據宣告來,它應算是父類物件,但擁有子類方法.

父類引用子類物件

父類引用子類物件 package test class fruit1 string get1 父類引用子類物件 如果父類的方法可以被重寫 靜態方法不能被重寫,因為它是隨著類的建立而存在於記憶體,只有乙份 並且已經重寫,那麼呼叫的是子類的方法 反之,則呼叫父類裡的方法 public class fru...

父類引用指向子類物件

要理解多型性,首先要知道什麼是 向上轉型 我定義了乙個子類cat,它繼承了animal類,那麼後者就是前者是父類。我可以通過 cat c new cat 例項化乙個cat的物件,這個不難理解。但當我這樣定義時 animal a new cat 這代表什麼意思呢?很簡單,它表示我定義了乙個animal...

父類引用指向子類物件

是多型的一種實現方式 這樣做使程式靈活性更好,若有多個子類,只需改變引用就能實現不同的功能,而不需要改變程式 父類 a 子類 a1,a2 a obj1 new a1 a obj2 new a2 如果a有乙個方法是show 子類實現了show 那麼obj1.show 就是第乙個子類的show obj2...