繼承已為大家所熟知的一個程式設計特性,PHP 的物件模型也使用了繼承。繼承將會影響到類別與類,物件與物件之間的關係。
例如,當擴展一個類,子類就會繼承父類所有公有的和受保護的方法。除非子類別覆寫了父類別的方法,被繼承的方法都會保留其原始功能。
繼承對於功能的設計和抽像是非常有用的,而且對於類似的物件增加新功能就無須重新再寫這些公用的功能。
Note:
除非使用了自動加載,否則一個類別必須在使用之前被定義。如果一個類別擴展了另一個,則父類別必須在子類別之前被聲明。此規則適用於類別繼承其它類別與介面。
Example #1 繼承範例
class foo { public function printItem($string) { echo "Foo:".$string.PHP_EOL; } public function printPHP() { echo "PHP is great.".PHP_EOL; } } class bar extends foo { public function printItem($string) { echo "Bar:".$string.PHP_EOL; } } $foo = new foo(); $bar = new bar(); $foo -> printItem('baz'); $foo -> printPHP(); $bar -> printItem('baz'); $bar -> printPHP();
輸出結果:
Foo:baz
PHP is great.
Bar:baz
PHP is great.
Bar:baz