class base
//可以看出,若子類沒有重定義父類的操作,子類會呼叫父類的函式。
//如果子類重定義,分兩種情況:
//1.子類重定義父類的函式,返回值和引數列表一致,此為 覆蓋 override
//子類和基類一樣可以發相同的訊息,但是子類表現出不同於父類的行為。。。。
//2.子類重定義了父類的成員函式,但是修改了返回值或者引數列表,此為隱藏 name hiding
//子類重定義父類的過載函式 時 將導致該函式的所有版本在子類中被自動隱藏。。。
先在子類找f() 找不到再到父類找,如果在子類找到了就使用了。。。
//替代原則:向上型別轉換
//在任何需要基類物件(指標)的地方,都可以用子類的物件(指標)來代替
Python 之物件導向 繼承
目標 單繼承多繼承 物件導向三大特性 封裝 根據 職責 將 屬性 和 方法 封裝 到乙個抽象的 類 中 繼承 實現 的重用,相同的 不需要重複的編寫 多型 不同的物件呼叫相同的方法,產生不同的執行結果,增加 的靈活度 單繼承1.1 繼承的概念 語法和特點 繼承的概念 子類 擁有 父類 的所有 方法 ...
C 基礎之物件導向(二)
友元函式 1 一般在操作符過載時會使用,其他情況很少使用。2 在a類中宣告函式b是a類的友元函式,則函式b可以訪問a的資料成員。3 友元函式至少有乙個引數 這個引數為宣告類的引用 因為 全域性函式是沒有this指標的,我們只能通過引數來確定訪問的是那個物件的資料成員 如果全域性函式找不到this指標...
python基礎之物件導向(一)
物件導向的程式語言,關注的是物件,而不注重過程,對於物件導向一切皆物件 以上方式可以用 孩子媽媽給孩子買瓜來解決 物件導向的程式設計思想,將所有功能統一儲存到對應的物件中,要使用某個功能,直接找到對應的物件即可 這種編碼方式比較容易閱讀,並且易於維護,容易復用。但是編寫的過程中不太符合常規的思維,編...