多型:也稱動態繫結,後期繫結或者執行時繫結
1.基類的構造器總是在匯出類的構造過程中被呼叫的,並且按照繼承層次逐漸向上鏈結,以使每個基類的構造器都能得到呼叫,因為構造器具有一項特殊任務,檢查物件是否被正確的構造,匯出類只能訪問它自己的成員,不能訪問基類的成員(通常都是定義成private),只有基類的構造器才具有恰當的知識和許可權來對自己的元素進行初始化,因此,必須令所有的構造器都得到呼叫。
構造器的呼叫順序:
1)呼叫基類構造器。
2)按照宣告順序呼叫成員的初始化。
3)呼叫匯出類的構造器的主體。
初始化的實際過程:
public class father
public void playmusic()
}
public class child extends father
public void playmusic()
}
輸出:
父親的構造方法
我是子類,我在放**!i=0
父親的構造結束
孩子的構造方法,i=2
通過以上分析可以得出:
1)在其他任何事物發生之前,將分配給物件的儲存空間初始化成二進位制的零。
2)如前所述那樣呼叫基類構造器,此時,呼叫被覆蓋後的playmusic()方法,並且呼叫該方法是在呼叫child()構造器之前呼叫的,由於基類的構造器還沒有執行完,此時執行被覆蓋後的playmusic()方法輸出i的值時,為預設的初始值。
3)按照宣告的順序呼叫成員的初始化。
4)呼叫匯出類的構造器的主體。
當匯出類有額外的介面時,當向上轉型後,匯出類中介面的擴充套件部分就不能被基類訪問,想要訪問可以通過向下轉型。告知是要具體轉型到哪個匯出類,轉型失敗會丟擲classcastexception異常。
第八章 指標 第八章 指標
1 什麼是位址 include using namespace std int main 11 在堆中建立對像 我們既然可以在堆中儲存變數,那麼也就可以儲存對像,我們可以將對像儲存堆中,然後通過指標來訪問它 include using namespace std class human 14 在建構...
第八章(筆記)
能在 中進行記憶體單元的定址的暫存器只有4個,分別是bx si di bp 其中bx bp 是基址,bx對應的段位址是ds,bp對應的段位址是ss si di 是變址,單獨使用時段位址是ds,組合使用段位址是跟隨組合的基址對應的段位址 中進行記憶體單元定址彙總 si di bx bp 常量 si 常...
第八章 字典
d 空字典 d 這就是字典 d dict.fromkeys a b d dict zip keyslist,valslist d dict name bob age 22 建立字典的函式 d name 通過索引key獲取對應的value d.keys 返回d字典物件所有key,返回乙個列表 d.va...