|
К пятому типу данных РНР относятся
объекты. Объект
представляет
собой переменную, экземпляр которой
создается по специальному шаблону,
называемому классом. Концепции объектов и
классов являются неотъемлемой частью
парадигмы объектно-ориентированного
программирования (ООП).
В отличие от других типов данных,
поддерживаемых в языке РНР, объекты должны
объявляться явно. Необходимо понимать, что
объект — всего лишь конкретный экземпляр
класса, используемого в качестве шаблона
для создания объектов с конкретными
характеристиками и функциональными
возможностями. Следовательно, объявление
класса должно предшествовать объявлению
объектов, создаваемых на их основе. Пример
объявления класса и последующего создания
объектов на его основе:
class appliance {
var power:
function set_power($on_off) {
$this->power = $on_off;
}
}
...
$blender = new appliance;
Определение класса задает атрибуты и
функции, связанные с некоторой структурой
данных — в данном примере это структура с
именем appliance (устройство). У этой структуры
имеется всего один атрибут power (мощность).
Для изменения этого атрибута создается
метод set_power.
Помните: определение класса — всего лишь
шаблон, и выполнять операции с ним в
программе невозможно; сначала нужно
создать объекты на основе этого шаблона.
Объекты создаются при помощи ключевого
слова new. Например, в приведенном выше
фрагменте создается объект $blender класса
appliance.
После создания объекта $blender можно задать
его мощность при помощи метода
set_power: $blender->set_power("on");
Объектно-ориентированное
программирование занимает столь важное
место в современных стандартах
программирования, что его применение в РНР
заслуживает отдельной главы. Реализация
ООП в РНР описана в главе 6. |