繼承是什麼?

不同類型的對象彼此之間經常會有一些相似的地方。例如:Mountain bikes, road bikes, and tandem bikes, 全都分享了bicycles 的特點(current speed, current pedal cadence, current gear)。但是他們也各自定義了其他的讓他們互相不一樣的特性: tandem bicycles有倆個座位和倆套車把, road bikes 有賽車車把,一些mountain bikes有額外的鏈圈,藉此來獲得較低的齒輪比。

面向對象編程允許類去繼承其他類中常用的狀態和行爲。例子中,Bicycle變成了MountainBikeRoadBike和TandemBike這三個類的超類。在java編程語言中,每個類都允許有一個直接的父類,但每個父類可以擁有不限量的子類

                            

                                             自行車類的層次

創建一個子類的語法非常簡單。在類聲明的開頭,使用extends關鍵字,緊接着就是想要繼承的類名:

class MountainBike extends Bicycle {

    // new fields and methods defining 
    // a mountain bike would go here

}
這樣就可以讓MountainBike擁有Bicycle的所有屬性和方法,還能讓它的代碼更專注於讓它顯得獨一無二的特性。這會讓你的子類的代碼更用於閱讀。但是你必須小心地正確記錄每個父類定義的屬性和方法,因爲這些代碼不會在子類中再次出現。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章