物件導向的C 語言 類的繼承

2021-10-03 02:38:56 字數 1089 閱讀 3992

使用繼承的示例 :

示例: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...