Final 锟截硷拷锟斤拷

PHP 5 锟斤拷锟斤拷锟斤拷一锟斤拷 final 锟截硷拷锟街★拷锟斤拷锟斤拷锟斤拷锟斤拷械姆锟斤拷锟斤拷锟斤拷锟斤拷锟轿� final锟斤拷锟斤拷锟斤拷锟斤拷锟睫凤拷锟斤拷锟角该凤拷锟斤拷锟斤拷锟斤拷锟揭伙拷锟斤拷啾伙拷锟斤拷锟轿� final锟斤拷锟斤拷锟杰憋拷锟教承★拷

Example #1 Final 锟斤拷锟斤拷示锟斤拷

<?php
class BaseClass {
   public function 
test() {
       echo 
"BaseClass::test() called\n";
   }
   
   final public function 
moreTesting() {
       echo 
"BaseClass::moreTesting() called\n";
   }
}

class 
ChildClass extends BaseClass {
   public function 
moreTesting() {
       echo 
"ChildClass::moreTesting() called\n";
   }
}
// Results in Fatal error: Cannot override final method BaseClass::moreTesting()
?>

Example #2 Final 锟斤拷示锟斤拷

<?php
final class BaseClass {
   public function 
test() {
       echo 
"BaseClass::test() called\n";
   }
   
   
// 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟角否将凤拷锟斤拷锟斤拷锟斤拷为final锟斤拷锟斤拷没锟叫癸拷系
   
final public function moreTesting() {
       echo 
"BaseClass::moreTesting() called\n";
   }
}

class 
ChildClass extends BaseClass {
}
// 锟斤拷锟斤拷 Fatal error: Class ChildClass may not inherit from final class (BaseClass)
?>

Note: 锟斤拷锟皆诧拷锟杰憋拷锟斤拷锟斤拷为 final锟斤拷只锟斤拷锟斤拷头锟斤拷锟斤拷锟斤拷鼙锟斤拷锟斤拷锟轿� final锟斤拷