Final classes

Inheritance allows for enormous flexibility within a class hierarchy. You can create subclasses to extend the functionality of a base class, but PHP OOP gives the posibility to create classes that cannot be extended. Such a class is called final class.
A final class is declared by adding the final keyword before the class word.
  - For example:
// base class (declared final)
final class Base {
  // ... PHP code

// define a child class derivated from Base
class BaseChild extends Base {
  // ... PHP instructions
Running this code will generate the following error:
Fatal error: Class BaseChild may not inherit from final class (Base) in ...

Final methods

A normal method (public or protected) can be overridden in the child class. If you want a method to remain fixed and unchanging, prefix the definition with the final keyword.
A final method cannot be overridden.
  - For example:
// base class
class Base {
  // final method
  final public function testMethod() {
    echo 'This is a final method';

// define a child class derivated from Base
class BaseChild extends Base {
  // override the testMethod()
  public function testMethod() {
    echo 'Another text';
This example will generate the following error:
Fatal error: Cannot override final method Base::testMethod() in ...

By declaring a class or method final, you limit the flexibility given by inheritance, so, use final with care.

Daily Test with Code Example

Which type of <input> creates input fields that should contain a numeric value?
type="text" type="number" type="date"
<input type="number" name="points" min="5" max="80" />
Which CSS property allows to change the transparency of an element?
font-style opacity color
#id {
  filter:alpha(opacity=40);    /* for IE */
Click on the function that formats a number to specified number of characters.
toPrecision() exp() toFixed()
var num = 12.34567;
alert( num.toPrecision(3) );       // 12.3
Which function randomizes the order of the elements into an array?
natsort() shuffle() sort()
$lang = array(10=>"PHP", 20=>"JavaScript", "site"=>"");
var_export($lang);     // array (0=>"", 1=>"PHP", 2=>"JavaScript")
PHP OOP - Final Classes and Methods

Last accessed pages

  1. AJAX Course, free Lessons (1054)
  2. Introduction to Adobe Flash (275)
  3. Circle and Oval with CSS (788)
  4. addChild and removeChild (766)
  5. Display data from PHP Array, or MySQL in HTML table (2135)

Top accessed pages

  1. PHP-MySQL free course, online tutorials PHP MySQL code (7784)
  2. Courses Web: PHP-MySQL JavaScript Ajax HTML CSS Flash-AS3 (7567)
  3. Get Attribute (ID, Class, Name, Title, Src) with jQuery (7271)
  4. PHP Chat Script (6683)
  5. PHP PDO - exec (INSERT, UPDATE, DELETE) MySQL (6643)