昨天介紹了物件導向裡最強大的繼承功能後,今天要講的觀念,是當子類別不滿意父類別繼承給它的東西時,該怎麼做呢?
覆寫(Method Override)是什麼
用一個生活化的例子來說明:
假設你的父母傳給你一輛老舊的車,這輛車雖然還能開,但性能不佳,功能也不怎麼強大。父母的這輛車就像是父類別裡的方法,它有基本的功能。但是你可能不滿意這輛車,你希望它變得更快、更時尚。所以你就決定保留這輛車的基本功能(繼承父母的車),但自己進行改造,換上新的引擎和輪胎,讓它能跑得更快。這就是覆寫的概念。
總而言之,在 Java 裡覆寫方法就是:子類別可以重新定義從父類別繼承來的方法,讓這個方法的行為適應子類別的需求。
如何使用
在使用覆寫時,需要用@Override(特別注意它和Method Overloading是不同的)
從昨天的People、Student、Teacher的例子延續說明:
那麼以上就是關於繼承的延伸觀念-覆寫啦,大家都認識它了嗎?