繼承(Inheritance)
繼承(Inhertitance)的意思是可以讓物件使用其他物件的屬性和行為,以避免重複程式碼。在物件導向程式設計中,類別下面可以有子類別,子類別可以使用上面父類別的屬性和行為,稱做繼承,就好像兒子繼承了父親的財產。
父類別和子類別的關係,簡單的說,就好像今天我有一個類別叫做動物,動物有很多種,貓、狗、豬等等這些都是動物,所以貓、狗、豬這些就是子類別,動物則是父類別。
繼承就好像一個富翁他的財產非常的多,他擁有很多的土地和房子,他也有很多的小孩,他的小孩就繼承了富翁的財產,每個人都分到了爸爸的房子,他的小孩也已經長大成家了,他的小孩再把房子分給下面的孫子,這就是繼承的概念。這個富翁是父類別,小孩是子類別,子類別繼承了父類別的內容,子類別下面還可以有子類別,下面的子類別又再繼承了父類別的內容,然後可以一直繼承下去。
但是需要注意,富翁當然不是所有的財產都給他的小孩繼承,這個富翁他擁有一個豪華的度假中心,只有他可以使用,不讓他的小孩用,不給他的小孩繼承,那麼這個土地就是是私有的,只有富翁可以用,不能被繼承。
這就回到了上次封裝的觀念,上回講到了封裝的目的是隱藏不必要的資訊,只提供了有必要的介面給使用者使用。那麼在這裡例子中,這個富翁的私人度假中心就是屬於private,富翁給他兒子繼承的土地房子就是protected,如果這個富翁他想為國家有點貢獻,想捐一塊地出來做公園,給大家都能到公園運動遊玩,那麼這個公園就是public。
在物件導向程式設計中,使用繼承可以簡化程式,繼承者繼承了父類別的內容,這樣就可以不必再一直做同樣的事情,因為這些事情在父類別已經做過了,沒必要再做一次,子類別只需要繼承就能使用,繼承是一個很重要的觀念,寫程式記得要善用繼承。
留言列表