使用繼承的示例 :
示例:class student : person
注:繼承——
子類自動地從父類**繼承所有的字段、方法、屬性以及索引器等成員作為自己的成員 。
除了繼承父類的成員之外,子類還可以新增新成員;隱藏或修改父類的成員。
1.欄位的繼承、新增與隱藏
示例:
class a
class b : a
2.方法的繼承、新增void sayhello() //子類的方法中多加了學校(school)字段
student(string name , int age,string school) : base(name, age)
注:上述示例,修改父類方法的同時,利用了父類方法;構造方法的同時,呼叫了父類的構造方法。
——base:
呼叫了父類的特定成員,包括欄位和方法。
在構造時,可以呼叫父類的構造方法。
3.父類與子類的轉換
例:
person p1 = new person();
person p2 = new student();
student s1 = new student();
studnet s2 = new studnet();
如上:
p1 = s1 ; //可以,因為person型別的變數可以引用student物件。(人包括學生,用學生代表人——需要乙個人,來了乙個學生)
s2 = p1 ; //不行,因為產生編譯錯誤。(學生不包括人,不能用小的代表大的,人不能代表學生——需要乙個學生,來了乙個人是錯誤的)
s2 = (student)p1 ; //編譯時可以通過,執行時則會出現型別不能轉換的異常。(父類不能轉化為子類,子類可以表示父類)
s2 = (student) p2 ; //正確,因為p2正好是student物件例項。
注:需要父類物件時,可以來乙個子類物件
@夢幻泡沫
物件導向 類的繼承
1 派生類物件的構造與析構 建立派生類物件的時候首先呼叫基類的建構函式初始化基類成員,隨後才呼叫派生類建構函式 派生類物件的析構過程首先是呼叫派生類的析構函式,再呼叫基類的析構函式 2 多重繼承 b c都繼承於a,而d繼承於b和c 多重繼承的兩義性 當d的物件呼叫a中的成員時就會產生兩義性 d b ...
C 語言物件導向程式設計 繼承
繼承就是基於乙個已有的類 一般稱作父類或基類 再去重新宣告或建立乙個新的類,這個類可以稱為子類或派生類。子類或派生類可以訪問父類的資料和函式,然後子類裡面又新增了自己的屬性和資料。在 c 語言裡面,可以通過結構體巢狀的方式去實現類的單繼承 暫不考慮多重繼承 但有一點注意事項,就是在結構體巢狀時,父類...
Python物件導向 類的繼承
基本概念 物件導向三要素之一,繼承inheritance 上例可以看出,通過繼承 貓類不同寫 直接繼承了父類的屬性和方法。繼承 定義格式如下 class 子類名 基類1 基類2,語句塊如果類定義時,沒有基類列表,等同於繼承自object。在python3中object類是所有物件的根基類 class...