создание и продвижение сайта (вбиваю в ТОП-10, как гвозди)Настройка и сопровождение платной рекламы яндекс.директ

PHP. Руководство по PHP. 2005

Абстрактные классыПред.Глава 19. Классы и объекты (PHP 5)След.

Абстрактные классы

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

Пример 19-16. Пример абстрактного класса
<?php

abstract class AbstractClass {

   /* Данный метод должен быть определён в дочернем классе */

   abstract protected function getValue();

   /* Общий метод */

   public function print() {

     print $this->getValue();

   }

}

class ConcreteClass1 extends AbstractClass {

   protected function getValue() {

     return "ConcreteClass1";

   }

}

class ConcreteClass2 extends AbstractClass {

   protected function getValue() {

     return "ConcreteClass2";

   }

}

$class1 = new ConcreteClass1;

$class1->print();

$class2 = new ConcreteClass2;

$class2->print();

?>

Код, предназначенный для прежних версий PHP, должен работать без изменений, если в нём отсутствуют классы или функции, именованные "abstract".

Отвечу на любые вопросы. С уважением, Дмитрий Владимирович.

Ваше письмо×
Free Web Hosting