一.子類與父類
1.子類:父類
例如:dog(子類):anomal(父類)
子類(派生類)父類(基類和超類)
2.子類可以繼承父類那些成員
(非私有成員,但是從技術角度,可以認為是父類的所有成員)
軟體系統中的兩個類符合is a時可以使用繼承
例如:student is a person
se is a employee
鴕鳥(ostrish)is a bird(錯誤結論!!!)
☆:繼承模式下子類構造背後到底發生了什麼?
如果我們想構建乙個子類物件
//在animal父類中class animal
public int age
//無參
public animal()
//帶參
public animal(string name,int age)
}
//在dog類中class dog:animal
public int age
//無參
public dog()
//帶參
public dog(string name,int age,string color)
public void empty()
}
//program打斷點進行除錯class program
}
按f11進行下面除錯
成序正常執行
(1)進入子類構造方法名,但子類構造的方法體
(2)跳轉到父類構造方法名,接下來執行父類構造的方法體
(3)父類方法體執行完畢,轉到子類的方法體執行
(4)子類方法執行完畢,跳轉到main物件函式,代表子類物件建立工程
結論:只要你敢建立子類物件,那麼後台一定有乙個父類物件已經自動生成!!!!
base(a,b):括號中有幾個引數,參照的是父類中的帶參構造。a,b的引數命名根據子類的帶參
構造引數的變數命名
base可以訪問屬性和方法
2.訪問修飾符(protected)
public(方法,類,成員變數):任何地方都可以訪問
internal(成員變數,類,方法):只能在當前程式集中使用(訪問)
private(方法,成員變數):只能中在當前類的{}使用
protected受到保護的(成員變數和方法):當前類以及其他子類,以及子類的子類
3.單根性和傳遞性
單根性:乙個孩子能有幾個親生父親
only one
乙個子類只能有乙個直接父類
4.多型
多型:不同的物件對同乙個操作,做出的響應不同,就是多型
5.通過base呼叫父類建構函式注意點
01.通過base呼叫父類建構函式只能書寫在子類的構造後
02.通過base呼叫父類構造函式引數順序和父類的建構函式一致
初始繼承和多型
繼承 inheritance 繼承的優點 提高軟體模組的可復用性和可擴充性。繼承 語法class 子類 父類 base關鍵字和protected修飾符 this 表示當前例項,通過他可以訪問本身的成員。base 表示父類,可以用於訪問父類的成員 private 私有的任何類無法訪問 public 共...
C 繼承和多型概念補充
一,繼承和多型 類之間的繼承 基類,父類 成員變數 描述類的屬性 成員函式 功能 派生類 子類 體現出與基類的不同 繼承 基類與派生類之間訪問許可權 1.public繼承 基類裡面的公有成員變數被繼承後在派生類中也是公有的 可以在類外被訪問 基類裡面的保護成員變數被繼承後在派生類中可以被訪問,在派生...
繼承和多型
物件導向程式設計時有乙個非常重要的原則 write once only once 編寫一次,且僅編寫一次 如果沒有繼承這種機制我們可能要重複寫很多 下面來看一下繼承 一 繼承 1 子類如果繼承父類必須使用extends這個關鍵字 2 子類呼叫父類的構造方法使用super關鍵字,也可以通過super來...