Web-технологии с базами данных. Астахова И.Ф - 53 стр.

UptoLike

53
Конструкторы позволяют выполнить действия создание объекта
и инициализацию его атрибутов за один этап.
Можно вызвать конструктор, который просто создает объект, но
не инициализирует его атрибуты:
$page = new Web_page;
Объект можно создать при помощи конструктора, определенного
в классе. В этом создается объект класса Web_page и присваивается
значение его атрибуту bgcolor:
$page = new Web_page("brown");
Деструкторы
Как упоминалось ранее, в РНР
отсутствует непосредственная
поддержка деструкторов. Тем не менее можно легко имитировать ра-
боту деструктора, вызывая функцию РНР unset( ). Эта функция унич-
тожает содержимое переменной и возвращает занимаемые ею ресурсы
системе. С объектами unset( ) работает так же, как и с переменными.
Допустим, работаем с объектом $Web_page. После завершения работы
с этим конкретным объектом вызывается функция
unset($Web_page);
Эта команда удаляет из памяти все содержимое $Web_page. Дей-
ствуя в духе инкапсуляции, можно поместить вызов unset( ) в метод с
именем destroy( ) и затем вызвать его:
$Website->destroy( );
Необходимость в вызове деструкторов возникает лишь при рабо-
те с объектами, использующими большой объем ресурсов, поскольку
все переменные и объекты автоматически уничтожаются по заверше-
нии сценария.
Простое и иерархическое наследование
Наследование является исключительно полезным средством про-
граммирования, поскольку его применение предотвращает копирова-
ние кода, совместно используемого структурами данных, например
общих характеристик различных типов транспортных средств, упоми-
навшихся в предыдущем абзаце. В общем случае синтаксис наследо-
вания характеристик другого класса в РНР выглядит так:
class Class_name2 extends Class_name1
{
                                53
     Конструкторы позволяют выполнить действия создание объекта
и инициализацию его атрибутов за один этап.
     Можно вызвать конструктор, который просто создает объект, но
не инициализирует его атрибуты:
     $page = new Web_page;
     Объект можно создать при помощи конструктора, определенного
в классе. В этом создается объект класса Web_page и присваивается
значение его атрибуту bgcolor:
     $page = new Web_page("brown");

     Деструкторы
     Как упоминалось ранее, в РНР отсутствует непосредственная
поддержка деструкторов. Тем не менее можно легко имитировать ра-
боту деструктора, вызывая функцию РНР unset( ). Эта функция унич-
тожает содержимое переменной и возвращает занимаемые ею ресурсы
системе. С объектами unset( ) работает так же, как и с переменными.
Допустим, работаем с объектом $Web_page. После завершения работы
с этим конкретным объектом вызывается функция
     unset($Web_page);
     Эта команда удаляет из памяти все содержимое $Web_page. Дей-
ствуя в духе инкапсуляции, можно поместить вызов unset( ) в метод с
именем destroy( ) и затем вызвать его:
     $Website->destroy( );
     Необходимость в вызове деструкторов возникает лишь при рабо-
те с объектами, использующими большой объем ресурсов, поскольку
все переменные и объекты автоматически уничтожаются по заверше-
нии сценария.



    Простое и иерархическое наследование
    Наследование является исключительно полезным средством про-
граммирования, поскольку его применение предотвращает копирова-
ние кода, совместно используемого структурами данных, например
общих характеристик различных типов транспортных средств, упоми-
навшихся в предыдущем абзаце. В общем случае синтаксис наследо-
вания характеристик другого класса в РНР выглядит так:
    class Class_name2 extends Class_name1
    {