- Include final classes

git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@169583 c90b9560-bf6c-de11-be94-00142212c4b1
This commit is contained in:
Marcus Boerger 2004-09-29 19:53:43 +00:00
parent 1c86e97348
commit fa0abba16b

View file

@ -1,10 +1,11 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.4 $ -->
<!-- $Revision: 1.5 $ -->
<sect1 id="language.oop5.final">
<title>Final Keyword</title>
<para>
PHP 5 introduces the final keyword, which prevents child classes from
overriding a method by prefixing the definition with final.
overriding a method by prefixing the definition with final. If the class
itself is being defined final then it cannot be extended.
</para>
<example>
@ -33,6 +34,29 @@ class ChildClass extends BaseClass {
</programlisting>
</example>
<example>
<title>Final class example</title>
<programlisting role="php">
<![CDATA[
<?php
final class BaseClass {
public function test() {
echo "BaseClass::test() called\n";
}
// Here it doesn't matter if you specify the function as final or not
final public function moreTesting() {
echo "BaseClass::moreTesting() called\n";
}
}
class ChildClass extends BaseClass {
}
// Results in Fatal error: Class ChildClass may not inherit from final class (BaseClass)
?>
]]>
</programlisting>
</example>
</sect1>
<!-- Keep this comment at the end of the file