Tuesday, July 17, 2012

v Interfaces.
Gives the ability for a class to fulfill more than one is-a relationships. A class can inherit only from one class, but may implement as many interfaces as it wants:

interface Display
{
function display();
}
class Circle implements Display
{
function display()
{
print "Displaying circle\n";
}
}

v Instanceof  operator.
Language-level support for is-a relationship checking. The PHP 4 is_a() function is now deprecated:

If ($obj instanceof Circle)
 {
print '$obj is a Circle';
}

v Final methods.
The final keyword allows you to mark methods so that an inheriting class cannot overload them:

class MyClass
{
final function getBaseClassName()
 {
return __CLASS__;
}
}

v Final classes.
After declaring a class as final , it cannot be inherited. The following example would error out.

final class FinalClass
{

}
class BogusClass extends FinalClass
{

}

v Explicit object cloning.
To clone an object, you must use the clone keyword. You may declare a __clone() method, which will be called during the clone process (after the properties have been copied from the original object):

No comments:

Post a Comment