PHP 5 поддерживает определение абстрактных классов и методов. Класс, который
содержит по крайней мере один абстрактный метод, должен быть определен как
абстрактный. Следует помнить, что нельзя создать экземпляр абстрактного класса.
Методы, объявленные абстрактными, несут, по существу, лишь описательный смысл и
не могут включать реализации.

Пример #1 Пример абстрактного класса
<?phpabstract class AbstractClass{
/* Данный метод должен быть определён в дочернем классе */
abstract protected function getValue();
abstract protected function prefixValue($prefix);
/* Общий метод */
public function printOut() {
print $this->getValue() . "\n";
}
}
class ConcreteClass1 extends AbstractClass{
protected function getValue() {
return "ConcreteClass1";
}
public function prefixValue($prefix) {
return "{$prefix}ConcreteClass1";
}
}
class ConcreteClass2 extends AbstractClass{
public function getValue() {
return "ConcreteClass2";
}
public function prefixValue($prefix) {
return "{$prefix}ConcreteClass2";
}
}$class1 = new ConcreteClass1;$class1->printOut();
echo $class1->prefixValue('FOO_') ."\n";$class2 = new ConcreteClass2;$class2->printOut();
echo $class2->prefixValue('FOO_') ."\n";?>
Результат выполнения данного примера:
ConcreteClass1 FOO_ConcreteClass1 ConcreteClass2 FOO_ConcreteClass2
Информация была взята тут.
Комментариев нет:
Отправить комментарий