舉例如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | <?php class Demo { public function do_something() { echo "1\n" ; } final public function do_something2() { echo "2\n" ; } } class Demo2 extends Demo { public function do_something2() { echo "3\n" ; } } $d = new Demo2(); $d ->do_something(); $d ->do_something2(); /* 《程式語言教學誌》的範例程式 檔名:class15.php 功能:示範 PHP 程式 作者:張凱慶 時間:西元 2013 年 2 月 */ ?> |
此例的 Demo 的 do_something2() 為 final 方法
7 8 9 | final public function do_something2() { echo "2\n" ; } |
Demo2 繼承自 Demo ,若執行 do_something2() 會發生錯誤

final 類別則不能被繼承,例如
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <?php final class Demo3 { public function do_something() { echo "1\n" ; } } class Demo4 extends Demo3 {} $d = new Demo4(); $d ->do_something(); /* 《程式語言教學誌》的範例程式 檔名:class16.php 功能:示範 PHP 程式 作者:張凱慶 時間:西元 2013 年 2 月 */ ?> |
Demo3 為 final 類別
2 | final class Demo3 { |
用 Demo4 繼承 Demo3 同樣會發生錯誤

中英文術語對照 | |
---|---|
類別 | class |
方法 | method |
子類別 | subclass |
您可以繼續參考
類別與物件
相關目錄
回 PHP 快速導覽
回 PHP 教材
回首頁
參考資料
http://www.php.net/manual/en/language.oop5.final.php
沒有留言:
張貼留言